![]() |
mehrere MessageDlgPos auf einmal
Guten Nachmittag erstmals,
also: Ich will ein Kleines Programm schreiben, dann bei einem Klick immer MessageDlgPos ausgibts.
Code:
Also so, dass man sie nicht schleißen muss/soll.
procedure TForm1.Button1Click(Sender: TObject);
var i: Integer; begin randomize; repeat MessageDlgPos('Test', mtInformation, [], 0, random(Screen.Width), random(Screen.Height)); MessageDlgPos('Test', mtError, [], 0, random(Screen.Width), random(Screen.Height)); MessageDlgPos('Test', mtWarning, [], 0, random(Screen.Width), random(Screen.Height)); MessageDlgPos('Test', mtConfirmation, [], 0, random(Screen.Width), random(Screen.Height)); until False ; end; Könntet ihr mir vllt weiter helfen. Vielen Dank im Voraus. mfg. |
Re: mehrere MessageDlgPos auf einmal
Hai about_blank,
zum einen: Was ist denn deine Frage? und zum anderen: Solche "Spassprogramme" mögen wir hier eigentlich überhaupt nicht! |
Re: mehrere MessageDlgPos auf einmal
Frage: Den Bildschirm mit MessageDlgPos ausgeben, aber dass man diese nicht schließen muss/soll für den nächsten Dialog.
zweck: meine mutter am pc erschrecken (-> am Mi. geburtstag) Den sonst hasse ich selber solche Joke-Programme, aber ich will nur meine Mutter ein bisschen erschrecken. mfg. |
Re: mehrere MessageDlgPos auf einmal
Was MessageDlgPos im endeffekt macht ist ein ShowModal auf ein TForm.
Und weil ShowModal erst abgearbeitet werden muss bevor es weiter geht kann es nicht meherere MessageDlgs gleichzeitig geben. Um das zu umgehen müsstest du die Dialoge in der Schleife wohl selbst erstellen und einfach mit .show zeigen. in etwa so
Delphi-Quellcode:
das design der forms bleibt dir überlassen
var
i: integer; form: array [0..10] of TForm; begin for i:= 0 to high(form) do begin form[i]:= TForm.Create(self); form[i].Left:= random(screen.Width); form[i].Top:= random(screen.Height); form[i].Show; end; end; Aber wie schon Peter Parkers Onkel einst sagte "Mit großer macht, kommt große Verantwortung" also immer brav mit sowas sein. |
Re: mehrere MessageDlgPos auf einmal
Zitat:
Gibt es sogar fertige Sachen hier bei uns. Such mal nach "blue Screen" oder "BSOD" oder so. Und Du meinst, sie hat ne Freude dran? |
Re: mehrere MessageDlgPos auf einmal
Zitat:
Ich werd mit ShellExecute den BlueScreen ScreenSaver von MS ausführen. __________________________________________________ ___________________________________________ @mschnell: danke, mal aber das ginge doch auch mit den MessageDlgPos oder ? Ein Freund hatte es sogar schon geschafft nur ich finde jetzt das Programm nicht. :wall: Und selber geht er nicht ans Handy ran :( so weit ich mich an den Code erinnern kann waren das auch nur ein paar zeilen mfg |
Re: mehrere MessageDlgPos auf einmal
ja geht auch
Delphi-Quellcode:
procedure TForm2.Button4Click(Sender: TObject);
var i: integer; form: array [0..10] of TForm; begin randomize; for i:= 0 to high(form) do begin form[i]:= CreateMessageDialog('test', mtWarning, []); form[i].Left:= random(Screen.Width); form[i].Top:= random(Screen.Height); form[i].Show; end; end; |
Re: mehrere MessageDlgPos auf einmal
Zitat:
Zitat:
* * * C L O S E D * * * |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:14 Uhr. |
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