VC++ enter

5 отговора 237 прегледа
#1

VC++ enter

Zashto kogato si napravq Dialog based application i natisna enter tq se zatvarq, nikakvi eventi ne sum pisal, mahnah i standartnite butoni deto sa kum neq
Kak moga da go opravq tuj

Отговор
в отговор на uffff #2

Re: VC++ enter

потърси в мсдн информация за WM_GETDLGCODE

ein heller Schein am Firmament
Отговор
в отговор на uffff #3

гадно, а? :))))) ами пробвай така:

с десния бутон щтракаш на класа, после даваш add windows message handler и си избираш OnOK. после му изкоментирваш викането на OnOK за базовия клас, което всъщност затваря диалога. въпреки че разкарваш бутоните ок i cancel то функциите им остават закачени за ентер и ескейп. за ескейп става пак така. ако си забелязал на диалог базирана апликация също така не работят OnKeyDown i OnKeyUp причината е подобна - клавишите са прихванати за контролите на диалога и не се пращат на самоя него. глобално подобни проблеми могат да се решат със пренаписване на PreTranslateMessage - една много полезна виртуална функция. от там можеш да си хващаш спрени съобщения и да си спираш нежеланите.

Отговор
в отговор на uffff #4

Re: VC++ enter

Просто всеки диалогов прозорец си има активен елемент, който е с по-тъмна рамка. Който бива извикван от ОС когато натискаш ентера. Подразбиращия се е бутона ОК, има си функции за промяна.

Отговор
в отговор на Бeлтъk #5

Re: VC++ enter

i koi sa tiq funkcii na default ???

Отговор
в отговор на uffff #6

Re: VC++ enter

Ами така:

1)Отваряш MSDN.
2)Отиваш на search.
3)Пишеш "change default button".
4)Прочиташ и правиш.

Научи се да го използваш това животно MSDN!

To code is to live, to live is to code!

Отговор