Einzelnen Beitrag anzeigen

Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#1

eigenartig : ShowMessage???

  Alt 6. Jul 2003, 13:31
Hi,
ich habe eine Funktion für mein Programm geschireben (http://www.delphipraxis.net/viewtopi...65d8a8f8567d54)
Damit werden andere Fenster in ein PopUp-Menü und in eine ListView minimiert.
Jetzt habe ich aber ein Problem. ERstmal vorweg: Die Funktion wird definitiv nur einmal ausgeführt...
Also führe ich ganz normal die Funktion aus, wird sie scheinbar 2 mal ausgeführt. Zumindest werden 2 Einträge eingetragen.
Schreibe ich jedoch am Anfang der Funktion ein ShowMessage(''); und führe sie aus so funktioniert alles wie gewünscht (bisauf, dass die Message gezeigt wird)
Woran liegt das?
Delphi-Quellcode:
function hide1(i : integer; Listview1 : TListView) : Boolean;
var
 pos1 : Integer;
 title : String;
begin
  ShowMessage(''); //disee doofe Message......

 if (ListView1.Items.Item[i].Checked = true) then
  begin
   {vestecken...}
     SetLength(fenster,High(fenster)+2);
     SetLength(fenster[High(fenster)],2);

     title := GetText(StrToInt(ListView1.Items.Item[i].SubItems.Strings[0]));

     fenster[High(fenster),1] := title;
     fenster[High(fenster),0] := ListView1.Items.Item[i].SubItems.Strings[0];

     ShowWindow(StrToInt(fenster[High(fenster), 0]), SW_HIDE);

  end
  else
   MessageDlg('Fenster schon verborgen.', mtWarning, [mbok], 0);
end;
Das ist irgendwie verrückt!
Ich könnte mir höchstens Vorstellen, dass da irgendwie eine Zeitverzögerung oder sowas der Grund ist. Ein Sleep(1000) bringt aber auch nichts...
Habt ihr ne Ahnung wie ich das vernünftig lösen kann?
Oder wie ich diese Message anzeigen lassen und sofort wieder schließen kann?
Danke schon mal
Alexander
  Mit Zitat antworten Zitat