2012-02-04 13 views
7

Sto utilizzando Application.MessageBox per mostrare i messaggi sulla mia applicazione VCL, ma quando l'applicazione ha uno stile vcl applicato, la finestra del messaggio viene mostrata con lo stile di Windows al posto dello stile corrente vcl.Come posso Skin della finestra di messaggio della mia app quando sono attivati ​​gli stili vcl?

Esempio codice

Application.MessageBox('Hello World', 'Hello', MB_OK + MB_ICONINFORMATION); 

Sample Image

enter image description here

Come posso mostrare una finestra di messaggio con lo stile VCL attuale?

+1

Qualcun altro ricorda WinAmp? –

risposta

14

La funzione Application.MessageBox chiama internamente la funzione MessageBox WinAPi, quella finestra non è un modulo creato da delphi quindi non può essere scuoiato con gli stili Vcl. Invece è necessario utilizzare una delle classi di dialogo e le funzioni dichiarate nell'unità Vcl.Dialogs come la funzione MessageDlg.

MessageDlg('Hello World', mtInformation, [mbOK], 0); 

enter image description here

+0

Queste classi di dialogo supportano ancora CTRL + C? –

+0

@DavidHeffernan, Sì. – RRUZ

+0

Ho appena provato. Non supporta CTRL + C molto bene perché quando si premono i tasti, il computer emette un segnale acustico. Immagino che lo debuggerò e QC. –

Problemi correlati