AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

[DevExpress-Ribbon] Flickern unterdrücken

Ein Thema von neo4a · begonnen am 10. Jan 2012 · letzter Beitrag vom 10. Jan 2012
Antwort Antwort
neo4a

Registriert seit: 22. Jan 2007
Ort: Ingolstadt
362 Beiträge
 
Delphi XE2 Architect
 
#1

[DevExpress-Ribbon] Flickern unterdrücken

  Alt 10. Jan 2012, 15:21
Ich habe den Effekt, dass ein TdxRibbon flickert, wenn sich auf dem Formular zumindest ein angedocktes TdxDockPanel befindet.

Im beiliegenden Sample werden alle Komponenten im Code erzeugt. Sobald man die erzeugten DockPanels schließt, hört der Flicker-Spuk beim Resizen auf.

Kennt vielleicht jemand eine Lösung?
Angehängte Dateien
Dateityp: rar Sample.rar (2,1 KB, 13x aufgerufen)
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: [DevExpress-Ribbon] Flickern unterdrücken

  Alt 10. Jan 2012, 16:26
probier mal alle Properties "DoubleBuffer" die du findest auf True zu setzen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
neo4a

Registriert seit: 22. Jan 2007
Ort: Ingolstadt
362 Beiträge
 
Delphi XE2 Architect
 
#3

AW: [DevExpress-Ribbon] Flickern unterdrücken

  Alt 10. Jan 2012, 17:17
probier mal alle Properties "DoubleBuffer" die du findest auf True zu setzen.
Ist eigentlich schon geschehen.

Meine Lösung ist, im TdxCustomRibbonForm.AfterResize-Event die Aufrufe SendMessage(ARibbonHandle, WM_SETREDRAW herauszunehmen bzw. so zu verschieben, dass sie nur wirken, wenn wirklich etwas per Redraw-Window gezeichnet werden muss.
Andreas
  Mit Zitat antworten Zitat
Bebe

Registriert seit: 3. Apr 2005
Ort: Berlin
104 Beiträge
 
Delphi 10.1 Berlin Professional
 
#4

AW: [DevExpress-Ribbon] Flickern unterdrücken

  Alt 10. Jan 2012, 17:38
Welche Version hast du von DevExpress installiert?

Eine Lösung hätte ich. Füge mal folgendes in deinem Formular ein, dann sollte es gehen.

Delphi-Quellcode:
type
  TdcRibbon = class(TdxCustomRibbon)
....
protected
    procedure WMEraseBkgnd(var Message: TWMEraseBkgnd); message WM_ERASEBKGND;

...

procedure TForm25.WMEraseBkgnd(var Message: TWMEraseBkgnd);
begin
  if UseSkin then // Ribbon Skin
    Message.Result := 1 // do nothing
  else
    inherited;
end;
Gruß
Matze
  Mit Zitat antworten Zitat
neo4a

Registriert seit: 22. Jan 2007
Ort: Ingolstadt
362 Beiträge
 
Delphi XE2 Architect
 
#5

AW: [DevExpress-Ribbon] Flickern unterdrücken

  Alt 10. Jan 2012, 17:48
Welche Version hast du von DevExpress installiert?
Ich habe hier v2011 vol 1.8

Füge mal folgendes in deinem Formular ein, dann sollte es gehen.
Perfekt. Ich danke Dir.
Andreas
  Mit Zitat antworten Zitat
Antwort Antwort

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:57 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz