Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Fr Jul 18, 2025 08:44

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Sa Mai 05, 2007 10:31 
Offline
DGL Member

Registriert: Fr Okt 24, 2003 22:26
Beiträge: 120
Wohnort: Mannheim
Programmiersprache: Delphi
Hallo,

Ich habe ein Problem unter Visa mit Aero und wsMaximized.
Dabei ist ein Flickern durch ein sehr oftes Neuzeichenen der Menus und Toolbars zu beobachten.

Also:
Ich wenn ich ein Element at runtime ändere (z.B. Position - Left oder dessen Größe - Width) werden zahlreiche Elemente, die garnicht davon betroffen sind (z.B das Menu und die Toolbars) neu gezeichnet. Das Endet in einem sehr unschönen flickern. Das tritt scheinbar bei allen Delphi Versionen (D4, D6, Turbos) auf, liegt also scheinbar nicht an meiner Version.
Das Problem tritt nur unter Vista auf, wenn Aero an ist. Außerdem muß die Anwendung im WindosSate Maximized sein. Ansonsten tritt es auch nicht auf. Die zuvor angesprochenen Elemente werde dann einfach nicht neu gezeichnet (es ist ja auch nicht notwendig) und somit flickert es nicht.

Ich habe das mal in angehängten Demo (Source und EXE) nachgestellt.

http://www.polarfire.de/menudemo.zip

Es enthält einfach ein Menu und 2 Buttons. Unter Vista mit Aero sehe ich ein Flickern des Menus wenn ich Button1 drücke.
Dieser Klick bewegt den Button 2 50 mal einen Pixel nach rechts. 50 mal habe ich gemacht, damit der Effekt einfach deutlich wird (solche Sachen treten ja real auf, da manchmal bei der Programmierung ja auch mehrere Elemente auf einmal in der Größe geändert werden müssen. Wie gesagt unter XP und Vista ohne Aero ist alles ok. Auch mit Aero funktioniert es problemlos, wenn die Anwendung nicht wsMaximized ist. Dann wird bei den entsprechenden Aktionen keine Neuzeichnen und damit das Flickern nicht ausgelöst (konnte ich sehen wenn ich in der WNDProg mal die Messages verfolge).
Das erstaunliche ist, daß dieses Neuzeichen nur bei wsMaximized auftritt und auch unter Vista mit Aero, wenn die Anwendung wsNormal und sehr groß ist nicht ausgelöst wird.

Hat dazu irgendwer Ideen oder Lösungen, wie das Flickern verhindert werden kann oder was sich als Workaround anbietet?


Beste Grüße
User69


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mai 05, 2007 11:47 
Offline
DGL Member

Registriert: Di Sep 19, 2006 13:24
Beiträge: 173
Naja ich habe keine Ahnung wie man das Problem ansich lösen kann aber was hällste von:

form1.left := 0;
form1.top := 0;
form1.width := Screen.Width;
form1.height := Screen.Height;
form1.BorderIcons := [biSystemMenu,biMinimize];

Kannst dir ja auch gleich ne eigene topbar schreiben.

(ja meine Lösung ist recht primitiv aber sollte ja gehen..)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Mai 05, 2007 14:33 
Offline
DGL Member

Registriert: Fr Okt 24, 2003 22:26
Beiträge: 120
Wohnort: Mannheim
Programmiersprache: Delphi
naja da wäre höchstens ein schlechter workaround.

Hat noch niemend dies Problem schon mal beobachtet?

Ich habe jetz schon gehört, daß es wohl mit Delphi 2007 nicht auftritt, wohl aber bis Delphi 2006.
Leider ist aber Delphi 2007 nor 2000 - Vista kompatible nicht jedoch Win 98 kompatible. Das schränk dann die Anwendung derzeit doch noch etwas ein.

Grüße
user69


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.006s | 14 Queries | GZIP : On ]