![]() |
|
|
![]()
|
|
| FantomaS19 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 28.7.2007 Репутация: нет Всего: нет |
В это диалоговое окно должно вводиться предложение, в зависимости от него выполняться определенные действия.Писал раньше только в консоли.С основами С++ знаком.Писать надо в VS2005.Что и куда нажимать?Если можно, литературу.
|
|||
|
||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: нет Всего: 162 |
Тебе в соответствующий раздел форума и поиск. Книг - завались. |
|||
|
||||
| Edik |
|
|||
|
Бывалый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 207 Регистрация: 13.9.2006 Репутация: -1 Всего: 1 |
Посмотри мой хелп- себе лично писал, это по поводу создания диалогового окна и реакции на кнопки.
Присоединённый файл ( Кол-во скачиваний: 27 )
article48.rar 0,83 Kb |
|||
|
||||
| Edik |
|
||||
|
Бывалый ![]() Профиль Группа: Awaiting Authorisation Сообщений: 207 Регистрация: 13.9.2006 Репутация: -1 Всего: 1 |
В архивчике (в пред. посте) я собрал то что читал по диалоговым окнам самое главное. Тебе поможет вникнуть. Только код из моей статьи (и вобще ) создает не модальное диалоговое окно:
а код:
создает модальное диалоговое окно. А вобще очень хорошие сайты по этому делу (просто и ясно) www.firststeps.ru и www.netcode.ru. |
||||
|
|||||
| FantomaS19 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 28.7.2007 Репутация: нет Всего: нет |
Посмотрел эти сайты.Особенно понравился первый.Вроде пока все понятно.НО там написано как делать в VC 6.0, а мне надо в VS 2003. Там пытался делать первый шаг.Создавал Win32Project и MFC Application. Пробовал с разными настройками. Все время выдает fatal error C1010: unexpected end of file while look c:\Program Files\...\step_1\step_1.cpp и иногда не то, что в VC 6.0. ЗЫ: Нашел книгу в бумажном варианте Мешков, Тихомиров "Visual C++ и MFC". Хорошая ли она? Это сообщение отредактировал(а) FantomaS19 - 4.11.2007, 21:28 |
|||
|
||||
| kurlyak |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 218 Регистрация: 7.11.2007 Репутация: 1 Всего: 3 |
Вот эта ошибка:
это не значит что не так делаеться как VC++ 6.0. Это ошибка говорящая про то, что у тебя в программе step_1.cpp нету завершающей скобки } которую ты где то пропустил. к тому же на сайте www.firststeps.ru есть возможность скачивать примеры (посмотри на каждом уроке внизу страницы). А диалоги как в в 2005 студии, как в 6.0 создаються одинаково. Просто сама среда разработки несколько видоизменена. Книга хорошая сам ее читал. Попробуй скачать вот это- хелп: Присоединённый файл ( Кол-во скачиваний: 22 )
Visual_C___MFC.chm 88,66 Kb |
|||
|
||||
| ano360 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 22.5.2006 Где: Москва Репутация: нет Всего: нет |
книга может и хорошая,но чтоб ее усвоить начальный уровень хоть какойнить нужен.
Чесно пытался после Билдера разбираться с Визуалом по этой книге, не получилось-слишком много и сразу-не усваивается. Книга вообще больше на справочник похожа чем на самоучитель. (Возможно я не прав) Это сообщение отредактировал(а) ano360 - 12.11.2007, 20:51 -------------------- Жизнь есть. |
|||
|
||||
| FantomaS19 |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 28.7.2007 Репутация: нет Всего: нет |
По большому счету да.А как в принципе можно написать учебник по MFC ?
Спасибо, хороший хелп.Например я зашел в "Работа с файлами". Там описаны 3 функции. И приведено еще около 30.Где бы найти более, менее полный справочник? |
||||
|
|||||
| kurlyak |
|
||||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 218 Регистрация: 7.11.2007 Репутация: 1 Всего: 3 |
Этот справочник- короткий справочник. Правильно. Визуал С++ по нему не выучишь- это точно. Но если есть база знаний минимальная то он не заменим.
Полный справочник по Visual C++ это MSDN который идет как дополнительная поставка к Visual Studo. Так и называеться MSND для Visual Studio. Но дело в том что он по английски. Берешь этот справочник, что скачал здесь, или любую другую информацию по русски и смотришь русское описание и применение функций, и если тебя заинтересовали эти функции по глубже, и ты уже что то про них знаешь, то в MSDN разобраться уже интуитивно будет проще. Понимаешь? Ты уже знаешь, что какая функция должна по идее делать, и чисто без глубкого знания английского разбираешься в MSDN- не. Если захочешь купить себе эту штуку на компакт- диске, то так и спрашивай MSDN для Visual Studio. В приницпе такое уточнение не нужно, так как MSDN и есть только для Vusual Studio, но продавцы часто сами не знают что продают, им надо уточнять, намекать, что к чему. Только версию MSDN надо по году подобрать к тому году, что и Vusual C++ у тебя. Потому что язык немного но меняеться. Лично у меня Vusual Studio 2005 но я до сих пор пользуюсь MSDN за 2001 год. Ничего, помогает, очень даже хоршо помагает.
Понимаешь, дорогой, язык Visual C++ слишком объемный, ты с первых уроков своих за компьютером сам тольком ничего не сможешь запомнить. Поэтому, рекомендую, все что ты новое узнаешь- заносить себе в тетрадочку, блокнотик, или в компьютер в текстовом виде. Клево, скажи? Все что ты сегодня выучил по Visual C++ занести в блокнотик и потом использовать. Ты посмотришь, что через месяц у тебя будет столько информации, что ты сможешь написать даже не одну книгу, а целых два тома. Кстати есть одна прога, называетсья HTML Help Workshop. Это уже другая тема- но с ее помощью можно создавать хелпы, виндовсовские хелпы. Один автономный файл с твоим хелпом. Поробуй найти ее в гугле, и скачать к ней описание. Я себе скачал. Ты сможешь даже выпустить свою собственную интернет- кингу, а потом например издать ее в бумажном варианте. Вобще это все так интересно... Меня самого захватывает С++. Изучаю уже год. Добавлено через 11 минут и 8 секунд Кстати FantomasS19 настоятельно рекомендую все таки изучать немного "Первые шаги" сайт по Visual C++ ( см. выше). Все, все примеры с этого сайта, с этих уроков могут работать в Visual Studio 2005. Только когда читаешь уроки- внимательно смотри, какие .h файлы прописать в проект, какие .lib файлы прилинковать в проекто. В принципе по первых уроках можно разобраться что именно App Wizard , который создает твою заготовку приложения вписывает в твою программу. Я понимаю, что тебя немного пугает созданная App Wizard MFC в Visual Studio заготовочная программа, поэтому там хорошо это описано. Без AppWizard. А потом уроки пойдут что надо будет создавать программы с AppWizard. Те первые уроки они как бы вводные- ты не обязан писать с нуля все свои программы. Кстати еще раз говорю, что ты жаловался, что у тебя ошибка в первом шаге (ты набрал программу):
просто ты где то напутал со скобочками { или } где то по- моему одну лишнюю вставил, судя по ошибке, или одну забыл поставить, где то закрыть скобку. Посмотри еще раз, не разочаровывайся. Уроки клевые. Если в облом самому вводить программу, то можешь с урока скачать пример, я говорил, внизу страницы с уроком (кстати там у них тоже иногда ошибки в коде случаютсья в примерах). И Visual C++ среда разработки, когда ты захочешь открыть такой проект Visual Studio 6.0 запросит- конвертировать проект в вид Visual Studio 2005 или нет. Ответь да, просмотри код на ошибки, и все заработает. |
||||||
|
|||||||
| kurlyak |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 218 Регистрация: 7.11.2007 Репутация: 1 Всего: 3 |
Я так понял у тебя диалоговое окно так и не получилось, сейчас у меня под рукой Visual Studio 2005, я попытаюсь подробно все описать. Сегодня выходной, можна расслабиться. Так вот. Запускаешь среду Visual Studio 2005. Дальше меню File->New->Project. Дальше выбор MFC Application. Внизу нового окошка этого своего MFC Application вводишь имя проекта. Например TestDlg. Жмешь ОК. Открываеться следующее окошко AppWizard. В нем просто нажимаешь Next. Дальше окошко- нажимаешь возле Dialog Based, убираешь птичку возле Use Unicode libraries, и ставишь пометку возле Use MFC in a static library - последнее значит, что твоя прога сможет работать на любом другом компьютере, если перенесешь программу. Жмешь Next. В следующем окоше (можешь сам разобраться что в нем к чему) тоже жмешь Next. В следующем окоше убираешь птичку возле ActiveX controls- мы эту технологию в программе использовать не будем. Жмешь Next и в финальном окошке жмешь Finish кнопку. Все заготовка сделанная AppWizard тобой закончена. Теперь сама программа. На закладке слева в среде разработки Resource View открываешь. Жмешь на имени твоих ресурсов правой кнопкой мыши и получаеться так (последовательность меню) TestDlg->Add->Resource. Открываеться новое окошко- в нем выбираешь Dialog (новый ресурс) и жмешь New кнопку. У тебя автоматически появляеться перед глазами твое новое диалоговое окно. С палитры элементов управления -справа появляеться перечень диалоговых элементов- выбираешь Static Text и ложишь его на свой диалог (надпись не забудь добавить в этот элемент). Этот диалог у тебя называеться IDD_DIALOG1. А главный диалог (изначально созданный в программе, откуда будет вызываться твой созданный IDD_DIALOG1) называеться IDD_TESTDLG_DIALOG. Найди его в ресурсах и открой, что бы его было видно. Положи на этот диалог кноку, дай ей надпись например "Go My Dialog!". Щелкни на кнопке правой кнопочкой мыши, и выбери Add Event Handler из меню. В новом окошке, что бы щелчек на кнопке срабатывал в программе выбери сообщение BN_CLICKED. Все в этом окошке, жми Add and Edit- то есть добавить функцию обработки этого сообщения и редактировать ее. Теперь начинаеться самое интересное. В кнопку добавь код(то есть в новую функцию):
И все. Твой диалог появиться на экране, когда запустишь программу и нажмешь кнопку "Go My Dialog!". Если ты на своем диалоге хочешь обрабатывать кнопки OK и Cancel все будет немного сложнее, но если тебе интересно, я могу описать что делать. То есть нажимаешь OK - делаеться дальше одно, нажимаешь Cancel- другое. Если тебе интересно и понятно, я могу объяснить. Это сообщение отредактировал(а) kurlyak - 17.11.2007, 15:27 |
|||
|
||||
| FantomaS19 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 28.7.2007 Репутация: нет Всего: нет |
kurlyak, огромное спасибо.Пока вроде все понятно.
|
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |