Поиск:

Ответ в темуСоздание новой темы Создание опроса
> MFC - с чего начать? Не могу начать работать с MFC 
:(
    Опции темы
saneea
Дата 13.7.2005, 21:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 205
Регистрация: 13.7.2005

Репутация: нет
Всего: 0



Начинал читать разные книги по MFC, но уже с первой главы не могу ничего понять. С самим языком С++ я знаком, писал консольные приложения, а вот под винду нифига не получается. С чего начать? С чего начинали вы, когда знали многое о консольных приложениях, но не знали ни капли библиотеку MFC? Падскажите плыз...
PM MAIL   Вверх
Coocky
Дата 13.7.2005, 21:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

Репутация: 25
Всего: 62



Начинал с изучения МФС.
Сейчас многие начнут кричать АПИ учить надо, не согласен, хотя и не полностью.
Что конкретней тебе не понятно, давай по одному вопросу..


--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
saneea
Дата 13.7.2005, 21:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 205
Регистрация: 13.7.2005

Репутация: нет
Всего: 0



Ну вот как мне реализовать такую вещь: диалоговое окно, с двумя кнопками, одна "next", другая "cancel". Если нажать на "cancel" то окно закрывается, если на "next" - открывается подобное этому окно и т. д.?
PM MAIL   Вверх
Coocky
Дата 13.7.2005, 22:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

Репутация: 25
Всего: 62



Просто
Создаешь проект МФС
Віьираешь как диалог
Создал, зашел в ресурсы , поудалял все кнопки и надписи...
Нарисовал свои две кнопки
Нажимаешь правой кнопкой на них( если работаешь в 2003 студии)
Выбираешь Properites. Меняешь текст(пишешь)
Затем берешь кнопку "Сansel" опять заходишь в ее свойства.
Выьираешь кнопочку Messages появится собщений список для этой кнопки.
Выбираеш BN_CLICKED, справа появится название функции-обработчика сообщений
Выбираешь Add
И сразу переходишь в код функции.
Это означает , что при событии BN_CLICKED( пользователь щелкнул один раз на этой кнопке)
Вызывается функция обработчик, вот в ней и обрабатываешь
А имеено пишешь
Код

OnOk();


Это функция диалогового окна, которая завершает его работу


--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
saneea
Дата 13.7.2005, 22:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 205
Регистрация: 13.7.2005

Репутация: нет
Всего: 0



Пасиба, попробую.
PM MAIL   Вверх
Coocky
Дата 13.7.2005, 22:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е

Репутация: 25
Всего: 62




Теперь вызов окна....
Добавляешь еще один диалог(для этого заходишь в AddResurces, вверху в меню Project)
появится окошко с реурсами, выбираешь диалог и New
Появится новый диалог, В свойствах укажи child Теперь жмешь правой кнопкой на нем и вібираешь AddClass
Появится окно, где ты дашь имя классу этого диалога, и выбери его производным от СDialog
Жми ок, появится новый класс.
Внеси его описание( его заголовка) в класс своего первого диалога #include
Создай его обьект.К примеру Mydialog2 dial;
Проделай операции с кнопкой Next такие же как и с Cansel
И в обработчие сделай
Код

dial.Create(this);//Создать
dial.ShowWindow(SW_SHOW);//Показать




--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
saneea
Дата 14.7.2005, 10:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 205
Регистрация: 13.7.2005

Репутация: нет
Всего: 0



Я тут правда не совсем разобрался, но кое что понял. Я ещё уроки кое-какие почиатал и сделал, что хотел. У меня Microsoft Visual C++ 6.0, может по этому я не могу въехать, но продвижения уже есть, главное, что я начал этим заниматься. Но вопросы ещё будут.
PM MAIL   Вверх
En_t_end
Дата 14.7.2005, 13:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2074
Регистрация: 4.12.2004

Репутация: 2
Всего: 20



saneea
В 6-ой студии есть удобный и мощный визард. Научишься пользоваться им - научишься использовать МФЦ на уровне продвинутого новичка.
PM MAIL ICQ Skype GTalk Jabber   Вверх
Vaulter
Дата 14.7.2005, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1724
Регистрация: 30.12.2002
Где: бункер

Репутация: нет
Всего: 22



MFC умерло.
сорри за оффтоп, просто. ИМХо не стоит изучать то, что умерло


--------------------
PM MAIL WWW ICQ   Вверх
saneea
Дата 15.7.2005, 11:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 205
Регистрация: 13.7.2005

Репутация: нет
Всего: 0



MFC умерло. А что тогда учить?
PM MAIL   Вверх
Alastis
Дата 15.7.2005, 11:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 251
Регистрация: 15.11.2004
Где: Казахстан, Астана

Репутация: нет
Всего: 10



saneea
спроси Perchillsmile
ну ладно, отвечу за него... да и за себя - QT
воспользуйся поиском - поймешь что это и почему MFCумерло


--------------------
Прости, что я говорю, когда ты меня перебиваешь.
PM MAIL WWW ICQ   Вверх
Plotter
Дата 15.7.2005, 13:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 98
Регистрация: 20.10.2002
Где: Москва

Репутация: нет
Всего: нет



MFC учить надо... ибо

а) пока что это везде требуется и переход на что-то другое произойдет еще не очень скоро. Все проекты, которые уже созданы переделываться, имхо, не будут.

б) в любом случае полезно, чтобы понять как все это работает

в) и что вообще такое? человек решил изучить MFC... полезное, ведь, дело... а вы его отговарвать начинаете.
PM MAIL WWW   Вверх
En_t_end
Дата 16.7.2005, 11:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2074
Регистрация: 4.12.2004

Репутация: 2
Всего: 20



Надо учить. Потом для изучения того же QT опыт будет достаточным. Хорошо ООП освоишь.
PM MAIL ICQ Skype GTalk Jabber   Вверх
saneea
Дата 1.4.2006, 16:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 205
Регистрация: 13.7.2005

Репутация: нет
Всего: 0



Подскажите пжалста какую-нить функцию шоб удаляла папку по заданному имени.
PM MAIL   Вверх
Dreamer_0x01
Дата 1.4.2006, 17:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


Профиль
Группа: Участник
Сообщений: 780
Регистрация: 14.4.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 12



Для изучения МФЦ нужно рахобраться с основными макросами, которые в МФЦ иногда могут начинающго программиста ввести в состояние паники. Также, неплохо освоить работу потоков в МФЦ. Так как большинство приложений в МФЦ на начальной стадии клепаются Визардом, а Визард для этого создает классы, производные от классов потоков МФЦ.

Что касается вымерла/не вымерла...Я вот например использую, нравится, для моих задач вполне хватает...


--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
DeadSoul
Дата 1.4.2006, 18:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1217
Регистрация: 25.9.2005
Где: Москва

Репутация: 2
Всего: 11



Цитата(saneea @ 15.7.2005, 11:08 Найти цитируемый пост)
MFC умерло. А что тогда учить?

C#, Java
Если интересует С++, то STL, boost

Цитата(Alastis @ 15.7.2005, 11:16 Найти цитируемый пост)
ну ладно, отвечу за него... да и за себя - QT

В скольких фирмах используется QT? MFC изспользуется гораздо чаще.



--------------------
 Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". 

Бьем спамеров их же оружием. Пусть весь спам сыпется им
[email protected] 
PM   Вверх
saneea
Дата 1.4.2006, 18:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 205
Регистрация: 13.7.2005

Репутация: нет
Всего: 0



Как папку удалить???
PM MAIL   Вверх
AlexPro
Дата 2.4.2006, 00:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 157
Регистрация: 9.11.2005
Где: Санкт-Петербург

Репутация: 3
Всего: 4



Цитата(saneea @ 1.4.2006, 18:46 Найти цитируемый пост)
Как папку удалить???

BOOL RemoveDirectory(LPCTSTR lpszDir) - Удаляет указанный пустой каталог.

Цитата(Vaulter @ 14.7.2005, 15:21 Найти цитируемый пост)
MFC умерло.

Это тебе лично Билл Гейтс сказал? smile Его уже сколько лет хоронят, никак похоронить не могут. (это я, собственно, про MFC, а не про Гейтса smile). На нем столько софта написано, что похоронят скорей того, кто действительно попытается его похоронить, при всех его недостатках.
В том числе на нем пишутся и современнейшие профессиональные интерфейсные библиотеки (на мой взгляд, интерфейс пользователя - самое слабое место в MFC). Можно посмотреть здесь и здесь. Так что,
saneea, не верь тем, кто хоронит MFC. По крайней мере, еще несколько лет он будет жить. Плюс в C# много взято из MFC, так что опыт не пропадет.
PM MAIL   Вверх
Dreamer_0x01
Дата 2.4.2006, 14:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


Профиль
Группа: Участник
Сообщений: 780
Регистрация: 14.4.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 12



Цитата

C#, Java


Но ведь для исполнения приложений, написанных на этих языках, нужно устанавливать ФраймВоркс и Виртуальную машину Ява, или я не прав?
Кстати, раз уж разговор пошел в эту ветку - я давно хочу продолжить изучение либо того, либо того языка - как их сравнить?

И по повду QT. Услышав про него в первый раз, пошел по указанной ссылке. Гляжу, а там все по-английски, что меня и вынудило сразу уйти с этого сайта...Русскоязычное есть что-нибудь по этой разработке?


--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
DeadSoul
Дата 2.4.2006, 15:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1217
Регистрация: 25.9.2005
Где: Москва

Репутация: 2
Всего: 11



Цитата(Dreamer_0x01 @ 2.4.2006, 14:57 Найти цитируемый пост)
Но ведь для исполнения приложений, написанных на этих языках, нужно устанавливать ФраймВоркс и Виртуальную машину Ява, или я не прав?

Да. Для Явы она стоит у большинства. Для С# не могу оценить процент "стоящих". Но многометровый фреймворк - это ограничение только для Shareware и т.д. программа.


Цитата(Dreamer_0x01 @ 2.4.2006, 14:57 Найти цитируемый пост)
Кстати, раз уж разговор пошел в эту ветку - я давно хочу продолжить изучение либо того, либо того языка - как их сравнить?

Я сравниваю по зарплатеsmile


Цитата(Dreamer_0x01 @ 2.4.2006, 14:57 Найти цитируемый пост)
И по повду QT. Услышав про него в первый раз, пошел по указанной ссылке. Гляжу, а там все по-английски, что меня и вынудило сразу уйти с этого сайта...Русскоязычное есть что-нибудь по этой разработке?

По QT есть даже книги на русском. А англичкий учи. Без него в программирование никуда


--------------------
 Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". 

Бьем спамеров их же оружием. Пусть весь спам сыпется им
[email protected] 
PM   Вверх
saneea
Дата 2.4.2006, 16:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 205
Регистрация: 13.7.2005

Репутация: нет
Всего: 0



Цитата

BOOL RemoveDirectory(LPCTSTR lpszDir) - Удаляет указанный пустой каталог.

не получается smile
пробовал так:
BOOL RemoveDirectory("D:\rt"); - не удаляет. Что я не так делаю? smile
PM MAIL   Вверх
Dreamer_0x01
Дата 2.4.2006, 17:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


Профиль
Группа: Участник
Сообщений: 780
Регистрация: 14.4.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 12



Цитата

Что я не так делаю?

Цитата

"D:\rt"


'\r' - это символ возврата каретки. Учите синтаксис ;)

Это сообщение отредактировал(а) Dreamer_0x01 - 2.4.2006, 17:19


--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
S.A.P.
Дата 2.4.2006, 17:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2664
Регистрация: 11.6.2004

Репутация: 2
Всего: 71



Цитата(Dreamer_0x01 @ 2.4.2006, 14:57 Найти цитируемый пост)
И по повду QT. Услышав про него в первый раз, пошел по указанной ссылке. Гляжу, а там все по-английски, что меня и вынудило сразу уйти с этого сайта...Русскоязычное есть что-нибудь по этой разработке?

тебе сюда
сюда
сюда
сюда

Пока информации мало и всё слишком разбросано.

PM MAIL   Вверх
Dreamer_0x01
Дата 2.4.2006, 17:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Терминатор
**


Профиль
Группа: Участник
Сообщений: 780
Регистрация: 14.4.2005
Где: Санкт-Петербург

Репутация: 9
Всего: 12



S.A.P.,
спасибо за ссылки.


--------------------
Нет ничего невозможного. Есть цели, и есть время и силы на их достижение.
PM ICQ   Вверх
DeadSoul
Дата 2.4.2006, 19:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1217
Регистрация: 25.9.2005
Где: Москва

Репутация: 2
Всего: 11



Цитата(S.A.P. @ 2.4.2006, 17:28 Найти цитируемый пост)
Пока информации мало и всё слишком разбросано.


S.A.P., насчет мало не соглашусь. Есть как минимум
http://www.ozon.ru/context/detail/id/2222143/
http://www.ozon.ru/context/detail/id/2273393/

По wxWidgets столько информации нет. По этой библиотеки вообще нет информации на русском языке


--------------------
 Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". 

Бьем спамеров их же оружием. Пусть весь спам сыпется им
[email protected] 
PM   Вверх
S.A.P.
Дата 2.4.2006, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2664
Регистрация: 11.6.2004

Репутация: 2
Всего: 71



DeadSoul, ну если сравнивать с Delphi, например, то мало smile . А эти книги уже довольно устаревшие (с момента выхода QT4 многое изменилось), обе лежат у меня на столе и одна - копия другой smile
PM MAIL   Вверх
DeadSoul
Дата 2.4.2006, 20:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1217
Регистрация: 25.9.2005
Где: Москва

Репутация: 2
Всего: 11



Цитата(S.A.P. @ 2.4.2006, 19:59 Найти цитируемый пост)
DeadSoul, ну если сравнивать с Delphi, например, то мало  . А эти книги уже довольно устаревшие (с момента выхода QT4 многое изменилось), обе лежат у меня на столе и одна - копия другой 

Согласен, что мало. Но это хоть что-то.


--------------------
 Если Вы получили ответ на Ваш вопрос, то нажмите на "Вопрос решен". 

Бьем спамеров их же оружием. Пусть весь спам сыпется им
[email protected] 
PM   Вверх
AlexPro
Дата 3.4.2006, 03:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 157
Регистрация: 9.11.2005
Где: Санкт-Петербург

Репутация: 3
Всего: 4



Цитата(saneea @ 2.4.2006, 16:23 Найти цитируемый пост)
BOOL RemoveDirectory("D:\rt"); - не удаляет. Что я не так делаю?

В сишных строках символ "\" является специальным. Если твой каталог называется "rt", то должна быть следующая команда: RemoveDirectory("D:\\rt");
PM MAIL   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.1557 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.