AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Eine einfaches Nachrichtenfenster (MessageDlg, Messagebox) ?
Thema durchsuchen
Ansicht
Themen-Optionen

Eine einfaches Nachrichtenfenster (MessageDlg, Messagebox) ?

Ein Thema von Qnkel · begonnen am 25. Sep 2005 · letzter Beitrag vom 25. Sep 2005
Antwort Antwort
Qnkel

Registriert seit: 14. Mär 2004
114 Beiträge
 
FreePascal / Lazarus
 
#1

Eine einfaches Nachrichtenfenster (MessageDlg, Messagebox) ?

  Alt 25. Sep 2005, 11:41
Moin.

Ich sitz hier vor einem eigentlich simplen Problem.

Ich will ein eines Fenster anzeigen lassen, wo eine Nachricht drin steht.

Ich kenne dafür 2 Methoden:

function MessageDlg(const Msg: string, DlgType: TMsgDlgType, Buttons: TMsgDlgButtons, HelpCtx: Integer): Integer; function MessageBox(const Text: PAnsiChar, const Caption: PAnsiChar, Flags: Integer): Integer; Ich benutze gerne die 2.Methode Application.Messagebox, weil ich dort auch die Titelzeile selber wählen kann.

So nun bekomme ich in der Delphi-Hilfe für die Buttons die verschiedenen Flags:
  • MB_ABORTRETRYIGNORE
  • MB_OK
  • MB_OKCANCEL
  • MB_RETRYCANCEL
  • MB_YESNO
  • MB_YESNOCANCEL

Sollte jeder kennen.

Ich kannte bis dato nur Zahlenkombinationen. Die Zahlen für die Buttons sind:
  • 0 = OK
  • 1 = OK und Abbrechen
  • 2 = Beenden, Wiederholen, Ignorieren
  • 3 = Ja, Nein, Abbrechen
  • 4 = Ja, Nein
  • 5 = Wiederholen, Abbrechen

Naja OK, kann man ja auch die MB_-Flags nehmen, sind ja schneller erkennbar.

Jetzt das eigentliche Problem:

Ich finde nirgends die Flags für die Dialog-Art!
Ich kenne die Zahlen-Flags:
  • 16 = Warnkreuz
  • 32 = Fragezeichen
  • 48 = Ausrufezeichen
  • 64 = Infozeichen (i)

Soweit ich das herausgefunden habe, sind diese Flags mit mt*.
Ich glaube das soweit rausgefunden zu haben:
  • 16 = Warnkreuz = mtWarning
  • 48 = Ausrufezeichen = mtError

Wie heißt der Rest und was gibt es noch für Möglichkeiten?
Lazarus v0.9.29 (2010-10-31 SVN 28000)
  Mit Zitat antworten Zitat
Benutzerbild von sECuRE
sECuRE

Registriert seit: 10. Apr 2003
Ort: Heidelberg
360 Beiträge
 
Delphi 7 Professional
 
#2

Re: Eine einfaches Nachrichtenfenster (MessageDlg, Messagebo

  Alt 25. Sep 2005, 11:43
Hi,

die Konstanten für die Icons fangen mit MB_ICON an, zum Beispiel MB_ICONINFORMATION. Wenn du das eingibst, mit der rechten Maustaste klickst und "Definition suchen" wählst, solltest du zu der Stelle kommen, an der diese definiert wurden. Dort siehst du dann alle Konstanten inklusive ihrer Werte. Die Hilfe sollte darüber aber auch Informationen haben.

cu
  Mit Zitat antworten Zitat
Qnkel

Registriert seit: 14. Mär 2004
114 Beiträge
 
FreePascal / Lazarus
 
#3

Re: Eine einfaches Nachrichtenfenster (MessageDlg, Messagebo

  Alt 25. Sep 2005, 11:54
Irgendwie nich.

Mein Code:
Application.MessageBox('Die Teamspeak-Bibliothek wurde bereits intialisiert!', 'Fehler bei der Initialisierung', So und wenn ich da MB_OK eintippe, is alles in Ordnung. Wenn ich nur MB_ eintippe, unterstreicht Delphi is rot. Ich kann rechte Maustaste > Deklaration suchen, aber da passiert nix.

Wenn ich MB_ICON eingebe wirds auch nur rot unterstrichen.
Lazarus v0.9.29 (2010-10-31 SVN 28000)
  Mit Zitat antworten Zitat
Benutzerbild von sECuRE
sECuRE

Registriert seit: 10. Apr 2003
Ort: Heidelberg
360 Beiträge
 
Delphi 7 Professional
 
#4

Re: Eine einfaches Nachrichtenfenster (MessageDlg, Messagebo

  Alt 25. Sep 2005, 12:19
Hi,

gib mal MB_ICONERROR ein und probier's dann .

cu
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Eine einfaches Nachrichtenfenster (MessageDlg, Messagebo

  Alt 25. Sep 2005, 12:21
Die würden auch hier stehen.
  Mit Zitat antworten Zitat
Qnkel

Registriert seit: 14. Mär 2004
114 Beiträge
 
FreePascal / Lazarus
 
#6

Re: Eine einfaches Nachrichtenfenster (MessageDlg, Messagebo

  Alt 25. Sep 2005, 13:35
Zitat von sECuRE:
Hi,

gib mal MB_ICONERROR ein und probier's dann .

cu
Ja ne is klar. Das funzt. Nur ich dachte, wenn ich MB_ICON eingebe, dann bekomme ich ne Liste oder sonstwas, was alles zur Verfügung steht. So habe ich das aus deiner Antwort interpretiert.
Lazarus v0.9.29 (2010-10-31 SVN 28000)
  Mit Zitat antworten Zitat
Qnkel

Registriert seit: 14. Mär 2004
114 Beiträge
 
FreePascal / Lazarus
 
#7

Re: Eine einfaches Nachrichtenfenster (MessageDlg, Messagebo

  Alt 25. Sep 2005, 13:38
Zitat von Matze:
Die würden auch hier stehen.
OK, das hat es beantwortet. Danke.
Lazarus v0.9.29 (2010-10-31 SVN 28000)
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Eine einfaches Nachrichtenfenster (MessageDlg, Messagebo

  Alt 25. Sep 2005, 14:29
Moin Qnkel,

solche API-Konstanten kannst Du auch über das PSDK finden, oder im MSDN (z.B. MSDN-Library durchsuchenMessageBox)
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Antwort Antwort


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:19 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