Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi In jeden Fenster gleiches Projektnamen anzeigen. (https://www.delphipraxis.net/59297-jeden-fenster-gleiches-projektnamen-anzeigen.html)

Karstadt 20. Dez 2005 11:18


In jeden Fenster gleiches Projektnamen anzeigen.
 
var CanClose: Boolean);
begin
CanClose := MessageDlg('Wollen Sie die Anwendung wirklich beenden?',mtCustom,[mbYes,mbNo],0) = mrYes


als Caption von dieses Fenster sehe ich Project1 :( Beim Form.caption steht bei mir was anderes.

Das soll irgendwie mit Application.xyz funktion gehen.. weist jemand wie das ging ?

jfheins 20. Dez 2005 11:20

Re: In jeden Fenster gleiches Projektnamen anzeigen.
 
Nimm statt MessageDlg (Borland-VCL) die Funktion MessageBox (Windows-API).

Da kannst du noch einen Titel angeben, und die Buttonbeschriftungen sind in der Sprache des Benutzers. ;)

Damit die MessageBox dieselbe Caption hat wie das Formular, bei Titel einfach schreiben:
Delphi-Quellcode:
PChar (MyForm.Caption)

Karstadt 20. Dez 2005 11:32

Re: In jeden Fenster gleiches Projektnamen anzeigen.
 
Application.Title := 'irgendwas'

bei messagebox kommt es immer zu HWND und PAnsiChar Fehler :(

jfheins 20. Dez 2005 11:38

Re: In jeden Fenster gleiches Projektnamen anzeigen.
 
Zitat:

Zitat von Karstadt
Application.Title := 'irgendwas'

Dann eben
Delphi-Quellcode:
PChar (Application.Title )
Zitat:

bei messagebox kommt es immer zu HWND und PAnsiChar Fehler :(
Zeig mal den Aufruf, und den genauen Fehler, du must wahrscheinlich nur String nah PChar konvertieren ...

Karstadt 20. Dez 2005 11:46

Re: In jeden Fenster gleiches Projektnamen anzeigen.
 
Kann das sein das es verchieden Versionen von MessageBox gibt? diese Funktion funktioniert beimir

Application.MessageBox('This should be on top.', 'Look', 1)
MessageBox(erwartet als ersten Paramtere ein hWND wert)

jfheins 20. Dez 2005 11:54

Re: In jeden Fenster gleiches Projektnamen anzeigen.
 
Ja, das eine ist auch Application.MessageBox, und das andere die API-Funktion.

Beim ersten Parameter der API-Funktion einfach MyForm.Handle oder Application.Handle einseten,
und Stringvariablen mit PChar(Stringvar) konvertieren ;)

dfried 20. Dez 2005 11:56

Re: In jeden Fenster gleiches Projektnamen anzeigen.
 
Leute, machts doch nicht so kompliziert!
Setz einfach einmal (am besten im Mainform oder über die Projektoptionen) den Application.Title dann erscheint immer der beim MessageDlg, dann sparst du dir das gekaspere mit MessageBox und Pchar und sonstigem!

EDIT: Oder noch einfacher: Speicher dein Projekt unter einem vernünftigen Namen, standardmässig ist das nämlich der Projektname, und "Project1" ist jetzt nich so aussagekräftig...


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:38 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