(Gast)
n/a Beiträge
|
AW: Titelleiste / Rahmen der MessageDlg ausblenden
1. Dez 2014, 16:21
Beispiel mit ausführbarer EXE im Anhang.
Um das Beispiel noch einfacher zu machen das alles noch einmal als Prozedur und nicht als Funktion.
Delphi-Quellcode:
procedure MsgBox(psCaption: string; psText: string; nHeigth: Integer; aMsgDlgType: TMsgDlgType; aMsgDlgBtn: TMsgDlgButtons; aMsgDlgBtnDef: TMsgDlgBtn);
var
aMsgDialog: TForm; // versehentlich vergessen ..
begin
aMsgDialog := CreateMessageDialog(psText, aMsgDlgType, aMsgDlgBtn, aMsgDlgBtnDef);
with aMsgDialog do
begin
BringToFront;
Caption := psCaption;
ClientHeight := nHeigth;
BorderIcons := []; // Keine Border-Icons
BorderStyle := bsNone; // Keine Titelleiste
FormStyle := fsStayOnTop;
Top := (Screen.Height div 2) - (Height div 2);
SetWindowPos( Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
Free;
end;
end;
// Aufruf:
MsgBox(' Caption', ' Text', 100, mtInformation, [mbYes, mbNo, mbClose], mbNo);
Geändert von dGeek ( 1. Dez 2014 um 16:32 Uhr)
|
|
Zitat
|