![]() |
Message Box
Hi,
hat jemand nen einfachen code, mit dem man, bei anklicken eines buttons, ne message box öffnet?? Ich fand nämlcih bisher immer nur kompliezierte Codes... :roll: |
Re: Message Box
Hallo cylon,
einfach genug?
Delphi-Quellcode:
bye
MessageDlg('Eine einfache Messagebox', mtInformation, [mbOK], 0);
Claus |
Re: Message Box
:hi:
Delphi-Quellcode:
In der Hilfe findest Du weitere Informationen dazu
procedure TMainForm.ButtonShowMessageClick(Sender: TObject);
begin Application.MessageBox('Message Text', 'Titel', MB_OKCANCEL); end; mfg Tobias |
Re: Message Box
hey., die ist cool und einfach...
DANKE :-D |
Re: Message Box
Ja OK...
aber ich hab noch ne frage. wie kann man auf buttondruck ne neue form öffnen?? :dance: |
Re: Message Box
Hallo cylon,
wenn das zweite Form existiert ...
Delphi-Quellcode:
bye
Form2.ShowModal
Claus |
Re: Message Box
Hi cylon!
Also hier noch ein paar Varianten (wenn du mal was anderes brauchst): Anstatt:
Code:
kann man auch schreiben:
MessageDlg('Text',mtInformation,[mbOK],0)
Ich hoffe ich konnte dir helfen! |
Re: Message Box
ja das ist gut...
danke.. |
Re: Message Box
cylon,
noch schöner geht es, wenn du die gexperts ( ![]() dann im GExperts-Menü (in der Delphi - IDE) "Messagedialg" aufrufst. :-) thomas |
Re: Message Box
beliebig viele Buttons angeben ?
ich dachte es gehen nur so art "vordefinierte Varianten" von MS also OK oder OK und Cancel..... |
Re: Message Box
Wenn man schon beim Auflisten von Alternativen ist, warum dann nicht auch die einfachste?
Delphi-Quellcode:
Die Sparlösung für alle, die mal etwas weniger brauchen. Gibt nur 'ne Box mit Text, nur ein OPK-Button, kein Symbol, Titel entspricht dem des Programmes. Wenn man vom Fehlenden Warnsymbol absieht, die einfachste Möglichkeit dem User irgendwas mitzuteilen.
ShowMessage('Text');
|
Re: Message Box
@ MrKnogge:
Keine Ahnung :( Ist auch durchaus denkbar, dass Delphi den "MessageDlg(...)" Befehl in den Windows-API Befehl umwandelt. Dort kann man nur die verdefinierten nehmen. (Das ist aus meinem bisschen C++ "Know-How" entnommen). Ich würd' sagen du hast recht :wink: [edit=Sharky]Doppelposting gelöscht ;-) Mfg, Sharky[/edit] |
Re: Message Box
Gibt es auch eine MessageBox, in der es nur den Button Close gibt?
Also sozusagen eine Fehlermeldung und wenn der User sie gelesen hat und den Button drückt, dass das gesamte Projekt geschlossen wird? |
Re: Message Box
Delphi-Quellcode:
Messagebox(Handle, 'Text', 'Caption', MB_OK);
|
Re: Message Box
Und wie kann man eine Messagebox schließen?
|
Re: Message Box
Schließt die sich nicht von alleine, wenn du auf einen Button klickst?
|
Re: Message Box
Ja. Aber...Ich hab ne MessageBox von mtConfirmation und darin zwei Buttons (Ja und Nein). Wenn ich auf Ja klicke schließt die Form.
Wenn ich Nein klicke soll einfach die MessageBox weg sein und die From offen bleibern. Aber hier schließt sich die Form ebenfalls. noch ein bisschen Code:
Delphi-Quellcode:
if MessageDlg('Sie müssen die Auswahl durch OK bestätigen.'+#10#13+
'Anwendung schließen?',mtConfirmation,[mbYes,mbNo],0) = mrYes then begin Close; end else ??? //<---- hier muss die MessageBox geschlossen werden OHNE das die Form schließt... end; |
Re: Message Box
lass das else einfach weg !
Deine MesageBox schliest sich von alleine. |
Re: Message Box
Dann erhalte ich auf einmal den Fatalen Fehler:
Ausgabedatei: 'F:\...\test.exe' kann nicht erstellt werden. [OT] Wie kann ich diesen Fehler allgemein verhindern oder wodurch kommt er zustande? [/OT] |
Re: Message Box
Der fatale Fehler kann aber nicht an der MessageBox liegen. Mehr Code, please.
|
Re: Message Box
der kommt zustande, wenn du deine Exe gerade laufen hast...
|
Re: Message Box
Da fehlt jetzt bissle Code, so kann man net viel dazu sagen. ;)
Nachtrag: Mensch, ich lahme Maus :mrgreen: |
Re: Message Box
ich hab meine anwendung aber nicht laufen...nicht inner taskleiste zu sehen und im Tast Mananger auch nicht..
Was nun? :gruebel: |
Re: Message Box
Dann müsste er mehrere Fehler bringen, und dir eventuell noch n paar Zeilen-Nr ausspucken, wenn du uns diese dann noch posten würdest :roll:
|
Re: Message Box
Hi!
Tritt der Fehler beim Kompilieren auf oder erscheint der während das Programm am "Arbeiten" ist. Ich tippe mal beim Kompilieren: Das kann wie gesagt nur sein, dass die Anwendung noch läuft. Vielleicht wurde sie unsauber beendet und ein Prozess spukt noch irgendwo rum. An der Message-Box an sich kann es aber echt nicht liegen. Ciao fkerber |
Re: Message Box
was braucht ihr denn fürn code..ich hab ganz schöän viele auf verschiedene Forms verteilt??
Kann man das eingranzen oder alles? |
Re: Message Box
den Code, der den Fehler verursacht :)
Wie gesagt, wenn es beim kompilieren auftritt und du den Prozess nicht findest oder sonstwas mach vielleicht mal nen Neustart und guck dann mal wieder. Sollte der Fehler erst mit dem "Einbau" verschiedener Funktionen aufgetreten sein, kommentiere diese Funktionen mal aus. Solltest du dann gar keine Idee haben, häng dein Projekt gezipt als Anhang an. Ciao fkerber |
Re: Message Box
Zitat:
@PhöniX gib uns einfach dein komplettes Projekt zum download... |
Re: Message Box
:wall: :wall: :wall:
hast ja recht ... aber ich hatte ja angenommen, dass es beim Kompilieren ist. :drunken: Ciao fkerber |
Re: Message Box
Das hab ich auch manchmal und ist recht einfach zu lösen:
Als erstes klickste in die Projektansicht. Danach einen Rechtsklick auf das Projekt und dann neu Compilieren und danach auf neu Erstellen! Danach sollte es wieder gehen |
Re: Message Box
Zitat:
Mit else weglassen gehts nicht, aber mit OnCloseQuery:
Delphi-Quellcode:
if MessageDlg('Sie müssen die auswahl durch OK bestätigen.'+#10#13+
'Anwendung schließen?',mtConfirmation,[mbYes,mbNo],0) = mrYes then begin question := False; CanClose := True; end else CanClose := False; FormKonf.visible := true; end |
Re: Message Box
Na also,
wo ist das PRoblem? So gehts doch |
Re: Message Box
Zitat:
einfach taskmananger öffnen und bei prozesse das programm suchen und dann den prozess beeden.. einfacher :mrgreen: |
Re: Message Box
Oder so :D
|
Re: Message Box
Wie kann ich in dem MessageDlg auch Koordinaten mitgeben ?
Delphi-Quellcode:
Da kommt immer "zu viele Parameter".
WeiterJaNein := MessageDlg('Weiter ?',mtInformation,[mbYes,mbNo],0,x,y,mbNo,nil) = mrNo;
Und dann noch zur Application.Messagebox. Worauf genau bzw. wie wirkt sich das aus ? |
Re: Message Box
Zitat:
Schau mal in die Hilfe. |
Re: Message Box
Dann stelle ich die Frage anders rum: In der Delphi Hilfe stehen 5 verschiedene MessageDlg mit unterschiedlichen Parametern, ich brauche eine mit x und y, da die "normale" etwas wichtiges verdeckt.
|
Re: Message Box
Willst du mich verar****? Wenn du 5 MessageDlg-Funktionen in deiner Hilfe hast, dann bedeutet das, du kannst die Box auf 5 verschiedene Arten aufrufen. Das gibt´s bspw. auch bei der .NET-MessageBox. Die einfachste Variante (vergleichbar mit "ShowMessage"):
Delphi-Quellcode:
Du kannst aber zusätzlich auch einen Titel angeben:
MessageBox.Show('Hallo, Welt!');
Delphi-Quellcode:
usw. Du musst eben nur die Konventionen (sprich: die erlaubten Parameter) beachten! Selbst ausdenken darfst du dir keine. Und wenn keine der 5 MessageDlg-Funktionen was von den X/Y-Koordinaten sagt, dann geht die Positionierung auch nicht.
MessageBox.Show('Hallo, Welt!', 'Titel');
|
Re: Message Box
Jo, Verarsche. Versuche das hier mal zu compilieren:
Delphi-Quellcode:
Der Kommentar ist aus der Hilfe. Da wo die ??? stehen bleibt Delphi hängen "inkompatible Typen TMsgDlgType und string". Dafür kommt er erst gar nicht dazu, über "zuviele Parameter" zu meckern. :mrgreen:
function WeiterJaNein (x,y : integer) : boolean;
begin (* function MessageDlg(const Caption: WideString; const Msg: WideString; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons; HelpCtx: Longint; X, Y: Integer; DefaultBtn: TMsgDlgBtn = mbNone; Bitmap: TBitmap = nil): Integer; overload; *) WeiterJaNein := MessageDlg('Weiter ?', '????????', mtInformation, [mrYes,mrNo], 0, 10, 11, mbYes, nil) = mrYes; end; |
Re: Message Box
"Hilf sir selbst dann hilft dir Gott" :
Delphi-Quellcode:
MessageDlgPos. Und das wußte keiner ? :gruebel:
function WeiterJaNein (x,y : integer) : boolean;
begin WeiterJaNein := MessageDlgPos('Weiter ? ',mtInformation,[mbYes,mbNo],0,x,y) = mrYes; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:07 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