Здравствуйте, TyazhovA, Вы писали:
TA>VC6.0. Диалоговое окно создано в стандартном конструкторе.
TA>Содержит >80 элементов CEdit (однострочные, align text=Left). Для всех установлен autohscroll=true. Значения некоторых элементов не умещаются полностью в их окнах, при выходе из таких полей всегда показывается правая часть поля, а мне надо левую. Как это сделать?
TA>Для одного поля,в обработчиках setfocus и killfocus поставил
f1->>SetSel(0,0,false);
TA>Но полей очень много, как сделать компактней?
TA>С уважением.
Можно переопределить OnCmdMsg(UINT nID, int nCode, void* pExtra, AFX_CMDHANDLERINFO* pHandlerInfo) :
nCode — это EN_SETFOCUS
nID — идентификатор окна на диалоге.
Проверять nID: если он относится к идентификаторам edit, то
CEdit* pEdit = (CEdit*) GetDlgItem(nID);
pEdit->SetSel(0,0,false);