AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

mehrere MessageDlgPos auf einmal

Ein Thema von about_blank · begonnen am 7. Jul 2008 · letzter Beitrag vom 7. Jul 2008
Thema geschlossen
about_blank

Registriert seit: 28. Jan 2008
Ort: Linz
5 Beiträge
 
#1

mehrere MessageDlgPos auf einmal

  Alt 7. Jul 2008, 14:01
Guten Nachmittag erstmals,

also:

Ich will ein Kleines Programm schreiben, dann bei einem Klick immer MessageDlgPos ausgibts.



Code:
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;
Also so, dass man sie nicht schleißen muss/soll.


Könntet ihr mir vllt weiter helfen.

Vielen Dank im Voraus.

mfg.
 
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#2

Re: mehrere MessageDlgPos auf einmal

  Alt 7. Jul 2008, 14:03
Hai about_blank,

zum einen: Was ist denn deine Frage?

und zum anderen: Solche "Spassprogramme" mögen wir hier eigentlich überhaupt nicht!
Stephan B.
 
about_blank

Registriert seit: 28. Jan 2008
Ort: Linz
5 Beiträge
 
#3

Re: mehrere MessageDlgPos auf einmal

  Alt 7. Jul 2008, 14:08
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.
 
mschnell

Registriert seit: 13. Sep 2006
27 Beiträge
 
#4

Re: mehrere MessageDlgPos auf einmal

  Alt 7. Jul 2008, 14:23
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:
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;
das design der forms bleibt dir überlassen

Aber wie schon Peter Parkers Onkel einst sagte "Mit großer macht, kommt große Verantwortung" also immer brav mit sowas sein.
 
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#5

Re: mehrere MessageDlgPos auf einmal

  Alt 7. Jul 2008, 14:26
Zitat von about_blank:
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.
So ne blueScreen kommt auch immer gut.

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?
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
 
about_blank

Registriert seit: 28. Jan 2008
Ort: Linz
5 Beiträge
 
#6

Re: mehrere MessageDlgPos auf einmal

  Alt 7. Jul 2008, 14:35
Zitat von RavenIV:
Zitat von about_blank:
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.
So ne blueScreen kommt auch immer gut.

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?
Na was glaubst du hab ich vor:

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.
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
 
mschnell

Registriert seit: 13. Sep 2006
27 Beiträge
 
#7

Re: mehrere MessageDlgPos auf einmal

  Alt 7. Jul 2008, 14:53
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;
 
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#8

Re: mehrere MessageDlgPos auf einmal

  Alt 7. Jul 2008, 15:02
Zitat von about_blank:
zweck: meine mutter am pc erschrecken
und
Zitat von about_blank:
Ich werd mit ShellExecute den BlueScreen ScreenSaver von MS ausführen.
Dein Mutter wird sich freuen. Weil wir hier aber kein Spassforum sind, und solche unsinnigen, ja gar blöden, Sachen hier unterstützen, wirst du damit wohl alleine klarkommen müssen. Hier gibts jedenfalls keine Unterstützung mehr zu.

* * * C L O S E D * * *
 
Thema geschlossen


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz