Работаю в MVS 2008.Надо сделать программу которая будет из поля edit1 получать строку ,по нажатию bottom1 производить анализ выражения и записывать ошибку в bottom4,если таковая имеется.Я не знаю как свзять процесс анализа и нажатие bottom1,и также проект не проходит компиляцию,выдает 2 ошибки :IDC_COMBO2-неизвестный идентификатор(в файле Kursovoy.cpp).Самостоятельно найти я данное IDC не смог.предполагаемая обработка должна происходить в классе MyDialog(находится в одноименном файле).В общем нужна помощ
volvo
11.12.2009 21:48
Ну, присоединил ты все CPP-файлы... А заголовочные где? В одном из них и должно быть описание твоего IDC...
Krjuger
11.12.2009 22:20
Вон короче залил,если ничего не выкидывать то только 9.4м догнал,вообще если базы удалить но проект будет весить меньше мегабайта.
Ну так что выкинуть базы и так скинуть или так оставить?
Krjuger
12.12.2009 17:21
В общем,как я понял 9 мегабайт никто качать не станет.Я выкинул папку дебаг и VC++ Intellisense Database теперь архив весит 50кб и вроде запускается проект,надеюсь Volvo,ты посомтриш.И еще как я понял мне придется переправлять все мои классы,чтобы адаптировать их под CString, в скязи с этим есть ли какая нибудь функция которая сверяет определенный сивмов из строки CString"a?
Krjuger
13.12.2009 17:25
Мда,попробовал переправить мой анализатор под CString столкнулся с проблемой вывода ошибки,если я передаю в мою функцию Result 1 символ то он передается как wchar_s а если я передаю переменную то как CString.Попробовал переделать под ссылки,не получилось,так же я запутался в организации функций и классов.Если я правильно понимаю то в функции MyDialog::OnInitDialog я произвожу инициализацию всех нужных мне переменных,OnEnChangeEdit1 я выполняю действия при изменении моего Edit.OnBnClickedButton1 это идет обработка события при нажатии на кнопку ,(кстати необходимо в этом событии проверять была ли нажата кнопка?)? В общем помощ нужна капитальная измененный проект в предыдущем посте.
Krjuger
13.12.2009 18:54
Ладно вроде в CString разобрался,но во всем остальном нужна помощ...
Krjuger
14.12.2009 21:25
Немного почитав, я понял что создал не совсем то что надо.В общем вот измененный вариант,так же переписал анализатор под CString и в общем нужен совет,,на правильном ли я пути,или я вообще бред делаю.Задача в том что по нажатии 1 кнопки должен пойти анализатор и записать в поле 2(это временно) ошибку.так же я немного не понимаю зачем нужно OnEnChangeEdit1().
Krjuger
16.12.2009 1:45
Ну хоть кто нибудь отзовитесь! В общем начну тогда с малого
void CKursovoyDlg::OnBnClickedButton1() { // TODO: Add your control notification handler code here CString buf;
edit_1.GetWindowTextW(buf); if ( buf == "" ) // Is a particular field still empty? { edit_1.SetWindowText(_T("Please enter a value for MyValue")); return; // Inform the user that he can't close the dialog without // entering the necessary values and don't close the // dialog. } else { Analiz m1(buf); edit_3.SetWindowText(m1.Output); CDialog::OnOK(); // This will close the dialog and DoModal will return. } }
Это обработка нажатия клавиши,я знаю что если в поле едита ничего не ввести? то в едит будет выведено Please enter a value for MyValue,что свидетельствует о том,что в переменную баф записывается информация из эдита,но при этом, когда я ввожу какую нибудь информативную строку,мне начинает выдавать ошибку в файле atlsimpstr.h
Krjuger
16.12.2009 18:44
Народ,неужели никто не пользуется mfc,или просто мне лично отвечать никто не хочет7
volvo
16.12.2009 19:17
Цитата
Народ,неужели никто не пользуется mfc,или просто мне лично отвечать никто не хочет7
Да кому на фиг этот MFC сдался? Я ж даже твой проект не могу сторонним компилятором открыть, только MSVC++ ему подавай. А я VC++ не держу, ибо не нужна мне привязка к одной ОСи...
Krjuger
16.12.2009 19:36
Хорошо хоть ответил,теперь понятно,что полчание такое.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.