|
|
|
Помогите
|
|||
|---|---|---|---|
|
#18+
Народ, помогите Fox-програмисту. Пробую сделать ocx в С++ (в которой я ноль) на базе EDIT Подскажите как в С++ 1. Добавить свойсво LineCount (Пробовал с ClassWizard Set/Get и метод Set потом удалял - только чтение) 2. Оброботать Edit1.Change (реакция на WM_????). В обработке: NewLineCount=SendMessage(hWnd,EM_GETLINECOUNT,0,0) // Где взять hWnd контрола? IF NewLineCount<>Edit1.LineCount 3.сгенерировать событие (Fire) LineCountIsGanged. Edit1.LineCount=NewLineCount ENDIF Главная загвоздка в п. 2: Где взять hWnd контрола? Или где почитать как єто всё сделать. шаг за шагом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2003, 14:49 |
|
||
|
Помогите
|
|||
|---|---|---|---|
|
#18+
Я тут новичок, поэтому скажу тока что знаю... Во-первых, лучше делать некий АктивХ, который содержит в себе контрол типа Едит. Тогда в процессе инициализации можно самому его сделать и запомнить где-то у себя хэндл окна. Тогда с ним можно работать как с обычным окном. 2. EN_CHANGE. EN_UPDATE - в зависимости от ситуации 3. Если в МФЦ то это так: в odl-файле сбытие описывается как метод. ... methods: [id(DISP_EVENT1)] void Event1(); ... в коде BEGIN_EVENT_MAP(CTwicParamEditor, COleControl) EVENT_CUSTOM_ID("Event1", DISP_ALLVALIDATE, fireOnEvent1, VTS_NONE) END_EVENT_MAP() где fireOnEvent1 //Events void fireOnAllValidate() { FireEvent(DISP_EVENT1,EVENT_PARAM(VTS_NONE)); } где DISP_EVENT1: #define DISP_EVENT1 <number id> Надеюсь, помог, или, хотя бы, не запутал и не ввёл в заблуждение :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2003, 10:55 |
|
||
|
|

start [/forum/topic.php?fid=57&gotonew=1&tid=2035666]: |
0ms |
get settings: |
5ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
20ms |
get topic data: |
9ms |
get first new msg: |
6ms |
get forum data: |
3ms |
get page messages: |
41ms |
get tp. blocked users: |
2ms |
| others: | 203ms |
| total: | 311ms |

| 0 / 0 |
