![]() |
Win32Api
nabend alle zusammen!
ich habe mich in letzter zeit mal mit der win32api auseinadergesetz. ich habe eine dialogressource erstellt und dann in delphi eingebunden(wie es Michael Puff in seinem SEHR GUTEN turtorial beschrieben hat). Ich hätte noch ein paar weitere fragen dazu: 1. Wie kann ich die Hintergrundfarbe des dialogs aus der resource ändern ( z.b. auf schwarz) 2. Wie kann ich verhindern dass der dialog nicht geschlossen (zerstört) sondern nur nicht mehr angezeigt wird.(wie bei VCL mit 2 forms habe, die eine schließe und wieder auf die andere komme)(hoffentlich verständlich). ich hoffe jemand kennt sich damit aus und kann mir helfen! |
Re: Win32Api
Hi,
Luckie sollte das in seinem Tut. auch beschrieben haben wenn ich mich nicht irre. Zum Ändern der Hintergrundfarbe eines Dialoges siehe unter ![]() Wenn Du verhindern möchtest das dein Dialog geschlossen und nur versteckt wird suche mal unter den Begriffen SC_CLOSE, SC_MINIMIZE. |
Re: Win32Api
hi turbopascal.
ich habe gerade die pdf datei nach WM_CTLCOLORDLG durchsucht und nichts gefunden. und bei schließen passiert gar nichts
Delphi-Quellcode:
function dlgfunc(hwnd: hwnd; umsg: dword; wparam: wparam;
lparam: lparam): bool; stdcall; begin result := true; CASE umsg OF WM_CLOSE: enddialog(hwnd, 0); WM_DESTROY: PostQuitMessage(0); WM_COMMAND: IF hiword(wparam) = BN_CLICKED THEN BEGIN CASE loword(wparam) OF 0: /mein exit button sendmessage(hwnd, SC_CLOSE, 0, 0); <--- SC_CLOSE statt WM_CLOSE end; end; else result := false; end; end; |
Re: Win32Api
1.)
![]() 2.)
Delphi-Quellcode:
Dann lässt er sich allerdings auch nicht mehr schlieesen.
WM_CLOSE: ShowWindow(hDlg, SW_HIDE);
|
DP-Maintenance
Dieses Thema wurde von "Phoenix" von "Sonstige Fragen zu Delphi" nach "Windows API / MS.NET Framework API" verschoben.
Wenn schon im Titel Win32 API steht... |
Re: Win32Api
danke luckie. ich wusste gar nicht dass microsoft so eine seite hat wo man so ziemlich alles über die api erfährt!
|
Re: Win32Api
Moin Mark,
noch ein kleiner Tip: Solche Konstanten kannst Du auch gut im PSDK nachschlagen (herunterzuladen bei Microsoft). Um mal Dein Beispiel aufzugreifen: SC_ steht für SysCommand, und es gibt eine Message WM_SYSCOMMAND, der die SC_xxx als wParam (der erste Parameter, nach der Messageangabe, also der dritte in SendMessage) angegeben werden. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:12 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