|
|
|
Вопросик про Диалог
|
|||
|---|---|---|---|
|
#18+
Есть форма на Вижуале... У меня есть Диалоговое окошко в нем есть два Edit'а IDC_EDIT1 и IDC_EDIT2 Как мне при появлении диалогового окна записывать туда текст Как при нажатии кнопки ОК в диалоговом окне вытаскивать значения из Эдитов и выполнять какую нибудь функцию в главной форме (скажем написать их в форме) Заранее спасибо))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2005, 12:16 |
|
||
|
Вопросик про Диалог
|
|||
|---|---|---|---|
|
#18+
WM_INITDIALOG WM_SHOWWINDOW WM_COMMAND GetDlgItem GetWindowText SetWindowText ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2005, 12:48 |
|
||
|
Вопросик про Диалог
|
|||
|---|---|---|---|
|
#18+
'FaTsO'Есть форма на Вижуале... У меня есть Диалоговое окошко в нем есть два Edit'а IDC_EDIT1 и IDC_EDIT2 Как мне при появлении диалогового окна записывать туда текст Как при нажатии кнопки ОК в диалоговом окне вытаскивать значения из Эдитов и выполнять какую нибудь функцию в главной форме (скажем написать их в форме) Заранее спасибо))) Все достаточно просто. Надо в твоем классе, производном от CDialog, прописать новые переменные-члены, имеющие тип IDC_EDIT1 и IDC_EDIT2 соответственно. Чтобы вытащить значение из Эдитов необходимо сначала обновить значения в перемeнных-членах при помощи UpdateData(), а затем как обычно: (LPCTSTR)<Member Variable> Установить новoе значение в окне ввода можно при помощи: SetDlgItemText(<ID ресурса>,<Текст>). Например: SetDlgItemText(IDC_EDIT2,(LPCTSTR)m_User); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2005, 13:22 |
|
||
|
Вопросик про Диалог
|
|||
|---|---|---|---|
|
#18+
Извините пожалуйста...я написал вот так вот BOOL Dialog::OnInitDialog() { CDialog::OnInitDialog(); UpdateData(TRUE); m_eOt.SetWindowText("-10"); m_eDo.SetWindowText("10"); UpdateData(TRUE); return TRUE; } У меня при появлении главной формы вызывается сразу Диалоговое окошко но то что я написал не вписывает значения...они вписываются только при повторном вызове Диалогового окна( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2005, 09:48 |
|
||
|
Вопросик про Диалог
|
|||
|---|---|---|---|
|
#18+
Прочитай про DDX_ и UpdateData ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2005, 10:19 |
|
||
|
Вопросик про Диалог
|
|||
|---|---|---|---|
|
#18+
Можна так: Edit'у привязываеш переменную типа СString Перед тем как вызвать диалог с ЭДИТОМ пишиш Dlg1.Edit1="Hello world"; UpdateData(false); Теперь вызываеш диалог с этим эдитом и ждёшь нажатия кнопки ОК. Если её нажал то вуаляяяя :) if(Dlg1.DoModal()==IDOK) { AfxMessageBox(Dlg1.Edit1); } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2005, 12:32 |
|
||
|
Вопросик про Диалог
|
|||
|---|---|---|---|
|
#18+
Насколько я помню у функции UpdateData есть два варианта аргумента, а именно true и false. При одном из них информация идет из окна в переменную окна типа m_edit1 и m_edit2 соответственно. При другом аргументе информация из переменной окна идет в само окно, т.е. визуализируется. Нужно только при создании на диалоговой панели окон редактирования с помощью мастера или ручками поставить в соответствие окнам редактирования переменные типа m_edit ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2006, 01:46 |
|
||
|
Вопросик про Диалог
|
|||
|---|---|---|---|
|
#18+
НЕ ПАРЬСЯ с переменными - используй Set(Get)WindowText() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2006, 08:15 |
|
||
|
Вопросик про Диалог
|
|||
|---|---|---|---|
|
#18+
1. Создать класс на базе диалога средствами мастера. 2. МОжно добавить мастером же две переменых CString m_txt1, CString m_txt2 к полям. 3. получится что-то типа Код: plaintext 1. 2. 3. 4. 5. 6. UpdateData(TRUE) - извлекает данные из контролов и помещает их в переменные. ... CMyDlg dlg; dlg.m_txt1="Hello!"; dlg.m_txt2="World!"; dlg.DoMoodal(); При отрисовке если в OnInitDialog есть UpdateData(FALSE) то в полях будет написано Hello! World! Ну и чтобы получить данные достаточно Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.01.2006, 15:11 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=33378172&tid=2032143]: |
0ms |
get settings: |
6ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
135ms |
get topic data: |
5ms |
get forum data: |
2ms |
get page messages: |
25ms |
get tp. blocked users: |
1ms |
| others: | 213ms |
| total: | 400ms |

| 0 / 0 |
