Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Message gelöcht ohne timer (https://www.delphipraxis.net/96758-message-geloecht-ohne-timer.html)

sirius 30. Jul 2007 14:43

Re: Message gelöcht ohne timer
 
Nö, eigentlich nicht:
Den timer setzt du vor dem Befehl Messagedlg auf enabled und das Event sieht so aus
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
var i,j:integer;
begin
  for i:=0 to application.ComponentCount-1 do
  if application.Components[i] is TForm then begin
    if TForm(application.Components[i]).Caption='Informationen' then begin
      TForm(application.Components[i]).ModalResult:=mryes; //oder was du hier willst
      timer1.enabled:=false;
      exit;
    end;
  end;
end;
Damit testest du auf den Titel, oder du testest jedes Fenster auf ein Label und auf dessen Inhalt:
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
var i,j:integer;
begin
  for i:=0 to application.ComponentCount-1 do
  if application.Components[i] is TForm then begin
    for j:=0 to application.Components[i].Componentcount-1 do
    if application.Components[i].Components[j] is TLabel then begin
      if TLabel(application.Components[i].Components[j]).Caption=
        'Wollen Sie diesen Vertretungsplan wirklich löschen? ' then begin
         TForm(application.Components[i]).ModalResult:=mryes;
         timer1.enabled:=false;
         exit;
      end;
    end;
  end;
end;

Luckie 30. Jul 2007 14:49

Re: Message gelöcht ohne timer
 
Was macht denn das für einen Sinn? Was soll ein Benutzer mit einem Dialog anfangen, der noch zwei Sekunden wieder verschwindet? Er wird wohl weder den Text lesen können, noch wird er auf den Dialog reagieren können. Wozu also?

sirius 30. Jul 2007 14:51

Re: Message gelöcht ohne timer
 
@Lucky:
Zitat:

Zitat von Der Typ, der die Frage gestellt hat
Die 2 sekunden hab einfach mal so geschrieben


hoika 30. Jul 2007 14:52

Re: Message gelöcht ohne timer
 
Hallo,

wenn es sich um einen unbedeutenden Hinweis handelt,
macht es schon manchmal Sinn.
Sieht man doch bei bestimmten Programmen auch,
die zeigen allerdings dann noch die verbleibenden Sekunden an
(nein, ich meine jetzt nicht das "Datei-Kopieren").

"Achtung, dieses Fenster zerstört sich in 5 Sekunden selbst"
*Klirr*
"Glaser anrufen ? ja, nein, vielleicht"

;)


Heiko

dajuhsa 30. Jul 2007 14:55

Re: Message gelöcht ohne timer
 
Zitat:

Was macht denn das für einen Sinn? Was soll ein Benutzer mit einem Dialog anfangen, der noch zwei Sekunden wieder verschwindet? Er wird wohl weder den Text lesen können, noch wird er auf den Dialog reagieren können. Wozu also?
wenn man was drucken will, kommt ein dialog: "soundso wird gedruckt" und unten drunter 1 button "Cancel". das ding erscheint und verschwindet nach 0,3 sekunden

SaFu 30. Jul 2007 14:57

Re: Message gelöcht ohne timer
 
Es soll einfach nur eine message kommen die datei wurde gelöscht und soll dan wieder verschwinden ohne das man mit ok bestätigen muss

hoika 30. Jul 2007 15:02

Re: Message gelöcht ohne timer
 
Hallo,

naja dazu würde ich kein MessageDlg benutzen,
es soll ja eine Info angezeigt und trotzdem was gemacht werden,
quasi SemiModal.

Siehe mein Posting hier

http://www.delphipraxis.net/internal...ight=showmodal


Heiko

Luckie 30. Jul 2007 15:13

Re: Message gelöcht ohne timer
 
Zitat:

Zitat von hoika
wenn es sich um einen unbedeutenden Hinweis handelt,
macht es schon manchmal Sinn.

Wenn die Meldung keinerlei Bedeutung für den Benutzer hat, warum dann anzeigen?

Zitat:

Sieht man doch bei bestimmten Programmen auch,
Und ergibt dort genauso wenig Sinn.


Zitat:

Zitat von dajuhsa
wenn man was drucken will, kommt ein dialog: "soundso wird gedruckt" und unten drunter 1 button "Cancel". das ding erscheint und verschwindet nach 0,3 sekunden

Richtig, weil es dann zu spät ist den Druckauftrag abzubrechen und so lange es nicht zu spät ist, wird er eben angezeigt, mit der Möglichkeit für den Benutzer den Druckauftrag abzubrechen.

Zitat:

Zitat von fuknersascha
Es soll einfach nur eine message kommen die datei wurde gelöscht und soll dan wieder verschwinden ohne das man mit ok bestätigen muss

Und was machst du, wenn der Benutzer gerade mit einem anderen Programm arbeitet, während die Meldung kommt oder gar nicht am PC sitzt? Das bedeutet doch, dass weder der Programmablauf noch die weitere Benutzung des Programmes von dieser Meldung abhängt. Warum also anzeigen? Desweiteren hat es sich eingebürgert eine (Fehler)meldung anzuzeigen, wenn etwas nicht funktioniert hat und nicht umgekehrt, wie du es hier machst.

dajuhsa 30. Jul 2007 15:19

Re: Message gelöcht ohne timer
 
bei der DB gibts ja auch keine durchsage "Achtung,Achtung! Der Zug nach Hinterkrautsheim hat keine 15 minuten verspätung" :wink:

SaFu 30. Jul 2007 19:52

Re: Message gelöcht ohne timer
 
:thumb:

ich sag ja das forum ist geil hier kannst auch noch lachen

aber ich gebe mich geschlagen da ich sowieso net der beste programmierer bin und es nur arbeit macht lass iches einfach sein :mrgreen: :mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:08 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz