169 похожих чатов

Я запутался. В чём вопрос? Вы разобрались или нет?

19 ответов

38 просмотров

https://t.me/ChatAssembler/109494

Здравствуйте! Да вот ищем ID из текстового поля в окошке dialogBox!

s54820- Автор вопроса
s54820
И что не так с GetDlgCtrlID или GetWindowLongPtr(h...

С первым что то не выходит а второе еще не пробовал!

s54820- Автор вопроса
s54820
Они должны идентично работать.

Значит я просто не понимаю как синтаксически строку написать потому что никаких значений нигде не вижу ни в стеке ни в регистрах, Пишу так invoke GetDlgCtrlID, [hwnddlg] или так пробовал, invoke GetDlgCtrlID, [hwnddlg], GetFocus или [GetFocus]

s54820
Они должны идентично работать.

Вроде выходит, что мне надо использовать SetDlgCtrlID потому что нужно предыдущее значение а не значение кнопки на которую я кликнул, т.е. я выделяю нужное поле и нажимаю кнопку памяти чтобы в это поле попало значение, и если использовать GetDlgCtrlID получается он вернет id кнопки либо тогда надо ставить GetDlgCtrlID в основной цикл чтоли и отлавливать эти id сравнением и сохранять, потому что id известны но так что то не получается пока. и еще такой момент что у меня почему то нет SetDlgCtrlID в той же библиотеке что и GetDlgCtrlID :)

disba1ancer
а зачем тебе вообще получать ID?

А как же кнопка поймет куда ей значение копировать 😀

Денис Фомин Fomin
А как же кнопка поймет куда ей значение копировать...

фишка в том что когда ты нажмёшь на кнопку ты сначала передашь ей фокус

s54820- Автор вопроса
disba1ancer
фишка в том что когда ты нажмёшь на кнопку ты снач...

Блин, об этом я и не подумал. Ну окей, там же поля ввода? Тогда можно по WM_COMMAND/BN_SETFOCUS сохранять hwnd последнего активного вместо GetFocus.

Денис Фомин Fomin
А как же кнопка поймет куда ей значение копировать...

сделай две кнопки одна из памяти в одно поле восстанавливает, другая в другое

disba1ancer
сделай две кнопки одна из памяти в одно поле восст...

Так я сначала так и сделал но это кондово, сейчас лучше!

s54820
Блин, об этом я и не подумал. Ну окей, там же поля...

проще две раздельные кнопки запилить, либо запилить классический интерфейс с одним текстовым полем

s54820- Автор вопроса
disba1ancer
проще две раздельные кнопки запилить, либо запилит...

И историей вычислений. Но это другая задача :)

s54820- Автор вопроса
disba1ancer
сделай две кнопки одна из памяти в одно поле восст...

Хотя да, ты прав. Такой подход по-любому убивает клавиатурную навигацию по диалогу. У меня выделено поле1, я таб-таб-таб через поле2 и поле3 на кнопку памяти. И она уже никак не догадается, какое поле я имел в виду.

s54820
Хотя да, ты прав. Такой подход по-любому убивает к...

для такого можно задействовать акселератор (комбинацию клавиш)

s54820- Автор вопроса
disba1ancer
для такого можно задействовать акселератор (комбин...

Можно, но контринтуитивно, что акселератор будет работать, а табы всё портить.

s54820
Можно, но контринтуитивно, что акселератор будет р...

вот потому и говорю либо по кнопке на каждое текстовое поле, либо только одно текстовое поле

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта