Консультация № 107433
30.10.2007, 21:59
0.00 руб.
0 4 1
надо сделать программку в MFC AppWizard(exe).там ее над сделать большую ну мне хотяб для примера...2 акошка Edit text и кнопка и чтоб при нажатии на кнопку число из 1 окошка умножалость на 2 и выводилось во 2 акошке.

Вот мне хотяб узнать как енто делаецо.

Приложение:
С++

Обсуждение

Неизвестный
30.10.2007, 22:19
общий
это ответ
Здравствуйте, Артемьев Артем Николаевич!
Вообще способов очень много! Например через мастера можно присвоить к переменым CEditBox значение int! Потом просто умножаете их и выводите спомощью функции SetWindowText!

в приложении пример(при нажатии кнопки) когда я создал на для этих двух окошкек control переменые(через master Wizard). Думаю как с мастером работать вас учить не надо! Но если что спрашиваете!
Удачи!


Приложение:
void CUmnDlg::OnBnClickedButton1(){ char buf[10],buf1[10]; cEdit1.GetLine(0,buf); cEdit2.GetLine(0,buf1); int a=atoi(buf)*atoi(buf1); memset(buf1,0,sizeof(buf1)); itoa(a,buf1,10); cEdit2.SetWindowText(buf1);}
Неизвестный
30.10.2007, 23:10
общий
Чета не считает я заменил:cEdit1.GetLine(0,buf); cEdit2.GetLine(0,buf1); На m_Edit1.GetLine(0,buf); m_Edit2.GetLine(0,buf1);Но результата никого
Неизвестный
31.10.2007, 20:44
общий
Честно говоря, в VC (VS) обычно поступают проще - определяют для контролов переменные (не Control а Value) с требуемым типом, и просто в нужный момент делают UpdateData(TRUE) - записать значение в переменные (обновить их) или, UpdateData(FALSE) - наоборот, обновить контролы данными из переменных. Вот не большой пример:Это делает "мастер" - привел для наглядности<code>CtestDlg::CtestDlg(CWnd* pParent /*=NULL*/) : CDialog(CtestDlg::IDD, pParent) , m_a(0) , m_b(0){ m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);}void CtestDlg::DoDataExchange(CDataExchange* pDX){ CDialog::DoDataExchange(pDX); DDX_Control(pDX, IDC_BTNSOLVE, btnSolve); DDX_Text(pDX, IDC_EDIT1, m_a); DDX_Text(pDX, IDC_EDIT2, m_b);}</code>а вот и наша функция - нажатие на кнопку "solve" - вычислить<code>void CtestDlg::OnBnClickedBtnsolve(){ UpdateData(TRUE); m_b = m_a * 2; UpdateData(FALSE);}</code>
Неизвестный
31.10.2007, 21:57
общий
Здесь я описал проблему. Посмотрите пожалуйста.http://rootkits.ru/viewtopic.php?pid=3241#p3241
Форма ответа