AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Flackern bei eigenem Komponenten verhindern...
Thema durchsuchen
Ansicht
Themen-Optionen

Flackern bei eigenem Komponenten verhindern...

Ein Thema von Weazy · begonnen am 13. Jul 2007 · letzter Beitrag vom 13. Jul 2007
Antwort Antwort
Benutzerbild von Weazy
Weazy

Registriert seit: 7. Apr 2005
Ort: Bern (Schweiz)
414 Beiträge
 
Delphi 2007 Enterprise
 
#1

Flackern bei eigenem Komponenten verhindern...

  Alt 13. Jul 2007, 12:40
Wie kann ich verhindern das mein eigener VCL Komponent flackert (z.b wenn align auf alclient gesetzt ist kommt es zum flackern beim resizen der form) Hier ein beispielcode:

Delphi-Quellcode:

unit VistaBar;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls,VisualCommon;

type
  TVistaBar = class(TGraphicControl)
  private
    FOnPaint: TNotifyEvent;
    property Canvas;
  protected
    procedure Paint; override;
  public
    constructor Create(AOwner: TComponent); override;
  published
    property Align;
    property Anchors;
    property DragCursor;
    property Visible;
    property OnClick;
    property OnDblClick;
    property OnMouseActivate;
    property OnMouseDown;
    property OnMouseEnter;
    property OnMouseLeave;
    property OnMouseMove;
    property OnMouseUp;
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('visual soft', [TVistaBar]);
end;

constructor TVistaBar.Create(AOwner: TComponent);
var
i:integer;
begin
  inherited Create(AOwner);
  Width := 100;
  Height := 20;
end;

procedure TVistaBar.Paint;
var
r:trect;
begin
  r.left:=0;
  r.Right:=width;
  r.Top:=0;
  r.Bottom:=height;
    with Canvas do
    begin
     canvas.Brush.Color:=clred;
     canvas.Pen.Color:=clblack;
     canvas.FillRect(r);
    end;

  if Assigned(FOnPaint) then FOnPaint(Self);
end;

end.
Danke für eure Antworten!
Philippe Wechsler
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Flackern bei eigenem Komponenten verhindern...

  Alt 13. Jul 2007, 12:46
Hallo,

schau Dir mal diesen Thread an. Evtl. ist was Brauchbares für Dich dabei.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  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 23:37 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