Как получить хэндл комбобокса в окне ордера? - страница 4

 
leonerd #:

а как вы фокус устанавливали на Edit control?

Думал SetFocus() сработает, а он похоже только для окон.

 Попробуйте это

hBUTT=GetDlgItem(hWnd,ID_cntrl);
    SendMessageA (hBUTT,  WM_ACTIVATE ,       1,  0 ) ; // Активизируем
    SendMessageA (hBUTT,  WM_ENABLE   ,       1,  0 ) ;
    SendMessageA (hBUTT,  WM_SETFOCUS ,       0,  0 ) ;
 
Mikhail Dovbakh #:

ага

Еще бы понять, как распарсить дробное значение, чтоб сопоставить каждому разряду, а также точке, свой код...

 
Mikhail Dovbakh #:

 Попробуйте это

Попробую. Спасибо. Но, вроде как, и так сработало у меня:

SendMessageW(hdlg,WM_NEXTDLGCTL,hwndControl,1);
 
leonerd #:

Еще бы понять, как распарсить дробное значение, чтоб сопоставить каждому разряду, а также точке, свой код...

Перевести double в string что ли сначала?

 
leonerd #:

Еще бы понять, как распарсить дробное значение, чтоб сопоставить каждому разряду, а также точке, свой код...

for (i= 0;i<l;i++)
    {
    if (StringGetChar(NumberText,i)==46)  k =  VK_DECIMAL;
      else  k =0x30+StringGetChar(NumberText,i);
    PostMessageA(hBUTT,  WM_KEYDOWN, k, NULLs);
    PostMessageA(hBUTT,  WM_KEYUP, 0, NULLs); 
    }
 
Mikhail Dovbakh #:

Спасибо. А с символом что делали? Тоже впечатывали по буквам?

 
Mikhail Dovbakh #:

Ещё есть VkKeyScanExW()  для этого.

 

Оказалась нетривиальная задача выбрать символ в окне ордера. Я его и впечатывал по буквам и отправлял через SendMessageW с WM_SETTEXT. Не применяется и всё..

Т.е. выбирать-то мне из списка как раз бы его не хотелось, подозреваю это еще сложнее. Ввести в поле получается, но не применяется значение.

 
leonerd #:

Оказалась нетривиальная задача выбрать символ в окне ордера. Я его и впечатывал по буквам и отправлял через SendMessageW с WM_SETTEXT. Не применяется и всё..

Т.е. выбирать-то мне из списка как раз бы его не хотелось, подозреваю это еще сложнее. Ввести в поле получается, но не применяется значение.

а нет, мой косяк, не обновлял хэндл edit поля.

Причина обращения: