000
14.01.2007, 15:52 Uhr
~Julius
Gast
|
Hi
ich habe einen Dialog in dem ich ein Groupbox definiert hab die Drag&Drop Fähig ist (WS_EX_ACCEPTFILES).
Nun hab ich in meiner Callbackfunktion die WM_DROPFILES: eingebaut, allerdings passiert nichts, wenn ich eine datei in das feld hinein ziehe und loslasse. Die WM wird nicht ausgelöst. Langsam verstehe ich nciht mehr woran es liegen könnte.
Jemand einen Tipp?
C++: |
INT_PTR CALLBACK DialogCallback(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) { HWND hGroupbox; HDROP hDropFile; INT_PTR nSize, nCount, nForIndex;
g_hDlg = hDlg;
UNREFERENCED_PARAMETER(lParam); switch (message) { case WM_INITDIALOG: {
hGroupbox = CreateWindowEx( WS_EX_ACCEPTFILES, L"button",L"Groupbox" , BS_GROUPBOX | WS_VISIBLE | WS_CHILD , 15, 15, 200, 150, hDlg, (HMENU) 1000, NULL , NULL); return (INT_PTR)TRUE; }
case WM_COMMAND: { if(LOWORD(wParam) == IDOK) EndDialog(hDlg,(INT_PTR)TRUE); break; }
case WM_DROPFILES: { hDropFile = (HDROP) wParam;
nCount = DragQueryFile(hDropFile, -1, NULL, 0);
for (nForIndex = 0; nForIndex < nCount; ++nForIndex) {
if( 0 == (nSize = DragQueryFile(hDropFile, -1, NULL, 0))) continue; }
DragFinish(hDropFile); }
case WM_CLOSE: { EndDialog(hDlg,(INT_PTR)TRUE); break; } } return (INT_PTR)FALSE; }
|
|