![]() |
|
![]() ![]() ![]() |
|
Sasha1 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 12.12.2005 Репутация: нет Всего: нет |
есть класс Complex
.cpp Complex Use; . . . . . void Complex::Vivod() { this->SetDlgItemText(IDC_EDIT1,str5); this->SetDlgItemText(IDC_EDIT2,str6); } void CProjectDlg::OnBnClickedButton8() { str1="1.2"; str2="1.2"; str5="1.2"; str6="1.2"; p_Edit7.GetWindowText(str1); p_Edit8.GetWindowText(str2); double im = atof (str1); double re = atof (str2); str5.Format ("%lg", im); str6.Format ("%lg", re); Use.Vivod(); //this->SetDlgItemText(IDC_EDIT1,str5); //this->SetDlgItemText(IDC_EDIT2,str6); } .h class Complex : public CDialog { public: CString Str; CString str1 ; CString str2 ; CString str3 ; CString str4 ; CString str5 ; CString str6 ; double summim; double summre; afx_msg void Vivod(); }; как сделать что бы ето работало? Код компилируется. ??? Програма читает строку , конвертирует в Доубле и выводит в другое место... |
|||
|
||||
Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Sasha1,
1) пиши о своих проблемах конкретнее, не жди телепатов 2) пользуйся тэгами code, пожалей тех, кто захочет тебе помочь 3) перестань издеваться над русским языком, ты не младенец, и не в чате. -------------------- ... |
|||
|
||||
Sasha1 |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 12.12.2005 Репутация: нет Всего: нет |
ProjectDlg.cpp отрывок из программы.
ProjectDlg .h
В чём вопрос. Можно оставить как есть , но тогде не будет задет ООП . а это не красиво.(Ну и не правильно). Хочеться что бы в функциях сложение деление и т.п были методы класаа (в которых описанно что надо делать)), а не просто писать то что он должен делать в корень . т.е по нажатию кнопки. Мне понятно что я написал , лучше не могу .. |
||||
|
|||||
Sasha1 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 12.12.2005 Репутация: нет Всего: нет |
Неужели никто не знает )) а как иначе писать )
![]() |
|||
|
||||
LPNcom |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 32 Регистрация: 4.5.2006 Репутация: нет Всего: нет |
Честна, хотел тибе помочь - крутил вверх-вниз - нифига ни понЯл.
Удали все лишнее, оставь главное, добавь комменты и скажи канкретно - чо нада. |
|||
|
||||
Sasha1 |
|
||||||||
![]() Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 12.12.2005 Репутация: нет Всего: нет |
Ок. Извиняюсь...
Можно написать так .... И это будет работать...
а я хочу что бы это работало только выглядело примерно так... ( Что бы не были напрямую задействованны функции , а чтобы был вызов метода класа )
complex.h
complex.cpp
Хочеться чтобы была просто другая конструкция... .. Что надо ставить в скобках гапример complex::vivod() ??? и что надо кода use.vivod(); ??? что ьы он делал this->SetDlgItemText(IDC_EDIT1,str5); this->SetDlgItemText(IDC_EDIT2,str6); ??? Добавлено @ 19:05 _______________________________________________________________________________ Хочеться чтобы была просто другая конструкция... .. Что надо ставить в скобках например тут complex::vivod() ??? и что надо когда use.vivod(); ??? что бы он делал this->SetDlgItemText(IDC_EDIT1,str5); this->SetDlgItemText(IDC_EDIT2,str6); ??? Это сообщение отредактировал(а) Sasha1 - 12.5.2006, 19:02 |
||||||||
|
|||||||||
Earnest |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Зачем делать Complex диалогом? У тебя есть диалог ProjectDlg, а к одному окну нельзя прицепить 2 разных диалоговых класса.
И не надо. Не наследуй класс Complex ни от чего. Передавай в функции, где ты хочешь читать-писать из диалога ссылку на него (можно просто как CWnd, точный класс для этого не обязателен):
Добавлено @ 19:27 Можно сделать и немного по-другому: хранить ссылку на диалог в классе Complex, передавая ее в конструкторе. Тогда так:
-------------------- ... |
||||
|
|||||
Dray |
|
|||
![]() Материалист ![]() ![]() Профиль Группа: Участник Сообщений: 652 Регистрация: 7.10.2003 Где: г. Всеволожск Репутация: 2 Всего: 6 |
Ну и замечательно! Иногда "лучше по-простому, чем по-умному"! ![]() |
|||
|
||||
Sasha1 |
|
||||||
![]() Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 12.12.2005 Репутация: нет Всего: нет |
чаго то не пашет , наверное ошибся
в h_ке описал метод
все тип топ , токо как её запустить.. т.е.
что вместо вопросиков поставить? если проблема не только в них напишите , как использовать этот метод класса)? Добавлено @ 17:59 2 способ , даже отладить не смог)) |
||||||
|
|||||||
Dray |
|
|||
![]() Материалист ![]() ![]() Профиль Группа: Участник Сообщений: 652 Регистрация: 7.10.2003 Где: г. Всеволожск Репутация: 2 Всего: 6 |
Откуда функция берет str5 и str6? Это глобальные переменные? Вместо вопросиков поставить this. |
|||
|
||||
Sasha1 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 12.12.2005 Репутация: нет Всего: нет |
c This я разобрался , пасибо.. а вот str5 str6 - CString
из Дилогового окна , тут проблема... Я переписал под отдельный класс. Т.е есть Сoplex.cpp & Copmlex.h . Можно сделать так . СDialog h; h.str5 ; и он ето видит , вопрос как сделать IDC_EDIT1 ? |
|||
|
||||
Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Предполагалось, что str должны быть переменными Complex... или передаваться как параметры... Глубину твоего дизайна я постичь не сумела, поэтому не знаю как лучше...
-------------------- ... |
|||
|
||||
Sasha1 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 12.12.2005 Репутация: нет Всего: нет |
ну да.. я хочу оперировать с 2 классами .. ввод с Диалогового окна , обработка входных параметров Классом СДиалог , а исполнение нужной функции методом класса Комплекс )
|
|||
|
||||
Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Тогда передавай туда все нужные переменные. Или, если их много, засунь их все в структуру и передавай ее.
-------------------- ... |
|||
|
||||
Sasha1 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 43 Регистрация: 12.12.2005 Репутация: нет Всего: нет |
я сделал . просто создал много новых методов CProjectDlg / всё работает , токо я хотел на 2 класса разбить ... Могу потом своё творение сюда выложить если кому интересно? завтра пойду показывать , так что i'll be back
![]() я думаю будет интересно кто помогал , кому я благодарен) |
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |