Hallo Leute,
ich habe folgendenden Code im OnDraw-Ereignis meiner Statusbar stehen.
Delphi-Quellcode:
procedure TMainForm.Status_ParserDrawPanel(StatusBar: TStatusBar;
Panel: TStatusPanel; const Rect: TRect);
begin
with Status_Parser.Canvas do
begin
if Status_Parser.Panels[1].Text = '' then Image_Parser.Draw(Status_Parser.Canvas,Rect.Left,Rect.Top, -1);
if Status_Parser.Panels[1].Text = 'keine Fehler gefunden' then Image_Parser.Draw(Status_Parser.Canvas,Rect.Left,Rect.Top, 6);
if Status_Parser.Panels[1].Text = 'Fehler gefunden' then Image_Parser.Draw(Status_Parser.Canvas,Rect.Left,Rect.Top, 7);
end;
end;
Nun möchte ich gern, das diese Procedure auch ausgeführt wird. Da es aber nicht von selbst zu klappen scheint, muss ich diese procedure wohl aufrufen. Wenn ich die 3 If-Schleifen weg lasse und einfach nur
Delphi-Quellcode:
with Status_Parser.Canvas do
begin
Image_Parser.Draw(Status_Parser.Canvas,Rect.Left,Rect.Top, 6
end;
schreibe, dann wird beim Createn des Forms das Bild nummer 6 aus der ImageList gezeichnet. Ich möchte aber abhängig vom Parserergebnis, welches ich beim Parsen dann festlege ein Image zeichnen.
Was mache ich falsch, oder wie kann ich die Procedure von wo anders aurufen?
Mir ist klar, dass diese Procedure Parameter erwartet, aber so hats nicht gefunzt:
Status_ParserDrawPanel(Status_Parser,Status_Parser.Panels[0],Status_Parser.Canvas.ClipRect);
Wer kann helfen???