|
|
|
CALLBACK в виде метода класса
|
|||
|---|---|---|---|
|
#18+
Необходимо запихнуть оконную процедуру в класс. Я передаю в класс хэндл контрола ( list-view ), отдельным методом реализую его оконную процедуру, Поскольку контрол создан заранее, то и оконная процедура уже есть, мне необходимо заменить оригинальную процедуру на свою. Пробую подменить ее: origLVWndProc = (WNDPROC)SetWindowLong( hLV, GWL_WNDPROC, (DWORD)LVGrid::ListViewWndProc ); Компилятор выдает ошибку: error C2440: 'type cast' : cannot convert from 'LRESULT (__stdcall LVGrid::* )(HWND,UINT,WPARAM,LPARAM)' to 'DWORD' т.е. не может переконвертировать тип. Однако если заводить оконную процедуру просто отдельной функцией, то все проходит успешно(подменяет и все работает). В чем может быть проблема и как ее можно решить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2006, 08:10 |
|
||
|
CALLBACK в виде метода класса
|
|||
|---|---|---|---|
|
#18+
сделай обычную процедуру, передавай в нее указатель на класс, а в ней уже вызывай (YOURCLASS*)ycPointer->yourMethod(); типа того ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2006, 09:30 |
|
||
|
CALLBACK в виде метода класса
|
|||
|---|---|---|---|
|
#18+
сделай его статиком ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2006, 10:02 |
|
||
|
CALLBACK в виде метода класса
|
|||
|---|---|---|---|
|
#18+
Может попробовать так Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2006, 10:09 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=33565104&tid=2031878]: |
0ms |
get settings: |
8ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
56ms |
get topic data: |
12ms |
get forum data: |
4ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
| others: | 238ms |
| total: | 388ms |

| 0 / 0 |
