Глупый наверное вопрос, но тем не менее.....
Есть диалог и в нем много Edit'ов. Переход между ними осуществляется клавишей Tab по умолчанию в определенном порядке — а именно в той последовательности в какой они добавлялись. Я думала, что этот порядок завистит от их ID, т.е. переход идет от меньшего ID к большему. Но оказалось что это не так. Так от чего зависит этот порядок и как им управлять?
Здравствуйте Xenia, Вы писали:
X>Глупый наверное вопрос, но тем не менее.....
X>Есть диалог и в нем много Edit'ов. Переход между ними осуществляется клавишей Tab по умолчанию в определенном порядке — а именно в той последовательности в какой они добавлялись. Я думала, что этот порядок завистит от их ID, т.е. переход идет от меньшего ID к большему. Но оказалось что это не так. Так от чего зависит этот порядок и как им управлять?
Посмотри меню Layout -> Tab order
Спасибо, заработало. Но вот еще какой вопрос про Edit'ы. Они у меня все служат для ввода чисел. Если связать с Edit'ом переменную типа int или double, вщбщем числового,проинициализировать ее нулем, то при запуске приложения эти нули в каждом Edit'e, и пользователю придется сначала этот ноль стереть, а потом свое число вписать. Они меня убьют за это
нельзя ли сделать, чтобы нулей либо совсем не было, либо чтобы при переходе в этот Edit его содержимое выделялось? (тогда нажатие любой клавиши сотрет предыдущее содержимое).
Здравствуйте Xenia, Вы писали:
X>Спасибо, заработало. Но вот еще какой вопрос про Edit'ы. Они у меня все служат для ввода чисел. Если связать с Edit'ом переменную типа int или double, вщбщем числового,проинициализировать ее нулем, то при запуске приложения эти нули в каждом Edit'e, и пользователю придется сначала этот ноль стереть, а потом свое число вписать. Они меня убьют за это нельзя ли сделать, чтобы нулей либо совсем не было, либо чтобы при переходе в этот Edit его содержимое выделялось? (тогда нажатие любой клавиши сотрет предыдущее содержимое).
А если табом переходить по эдитам, то так сразу все содержимое выделяется
Здравствуйте Xenia, Вы писали:
X>Спасибо, заработало. Но вот еще какой вопрос про Edit'ы. Они у меня все служат для ввода чисел. Если связать с Edit'ом переменную типа int или double, вщбщем числового,проинициализировать ее нулем, то при запуске приложения эти нули в каждом Edit'e, и пользователю придется сначала этот ноль стереть, а потом свое число вписать. Они меня убьют за это нельзя ли сделать, чтобы нулей либо совсем не было, либо чтобы при переходе в этот Edit его содержимое выделялось? (тогда нажатие любой клавиши сотрет предыдущее содержимое).
Юзай примерно так
CArray<int> m_arrFrom;
BEGIN_MESSAGE_MAP(CxxxDlg, CDialog)
//{{AFX_MSG_MAP(CxxxDlg)
//}}AFX_MSG_MAP
ON_CONTROL_RANGE( EN_UPDATE,IDC_EDIT_00, IDC_EDIT_99, OnUpdateTo)
END_MESSAGE_MAP()
void CxxxDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CTiePortsDlg)
//}}AFX_DATA_MAP
for(int l = IDC_EDIT_00; l<IDC_EDIT_99 ;l++)
{
DDX_Text(pDX, iFromID , (int&)m_arrFrom[l]);
}
}
afx_msg void
CxxxDlg::OnSetFocusTo( UINT id )
{
GetDlgItem(id)->SendMessage(EM_SETSEL,0,-1);
}