Einzelnen Beitrag anzeigen

wfs12

Registriert seit: 15. Nov 2006
60 Beiträge
 
Delphi 7 Personal
 
#1

Flackern bei onshow vehindern

  Alt 26. Apr 2007, 17:38
Guten tag allerseits,
Ich habe ein Problem ich habe eine Form auf der ich ein paar Rechtecke auf das Canvas gezeichnet habe wenn ich mit der Maus nun über eins dieser Rechtecke komme möchte ich gerne ein popup zeigen dass informationen zu diesem Rechteck enthält die Koordinaten des Rectecks habe ich in einem Array gespeichert. klappt auch alles bestens. als popup zeige ich eine zweite form an (show) jetzt ergibt sich bei meinem quellcode folgendes Problem das Fenster beginnt zu flackern weil ich hiermit sowas wie eine endlosschleife konstruiert hab. Wuie kann ich das lösen?
Delphi-Quellcode:
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
var
  i:integer;
begin
  for i:=0 to max-1 do
    if (x>PosArray[i,1]) and (x<PosArray[i,3]) and (y>PosArray[i,2]) and (y<PosArray[i,4]) then begin
      hintid:=PosArray[i,0];
      if not Form4.Showing=true then
        Form4.Show;
      Form4.Left:=X+200;
      if Y<150 then
        Form4.Top:=Y+150
      else if clientheight-Y<170 then
        Form4.top:=Y-170
      else Form4.top:=Y;
   end else Form4.Hide;
end;
Danke im Vorraus!
  Mit Zitat antworten Zitat