Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.80/30: Рейтинг темы: голосов - 30, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 13.02.2014
Сообщений: 16

MFC WinApi для создания интерфейса

10.07.2014, 20:11. Показов 7084. Ответов 51
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В общем я хочу научиться делать приложения простым языком форма с кнопочками и это приложение должно обращаться к винде залазить в файлы и тд. Слышал о функциях WinApi Как бы они решают мою проблему с обращением к винде а вот форму тоже в Api Делать? Да и в общем MFC Это упрощение winapi?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.07.2014, 20:11
Ответы с готовыми решениями:

Реализация графического интерфейса пользователя в приложениях WinAPI. Ошибка default
Сама программа: // фывфвфыв.cpp: определяет точку входа для приложения. // #include "stdafx.h" #include...

Какие еще есть способы создания визуальных приложений кроме WinApi?
Здравствуйте, я так понимаю под Windows оконные приложения создаются на WinAPI. Хотел спросить есть ли другие инструменты для создания окон...

Как придумать понятный яп?точнее платформу для создания пользовательского интерфейса Windows замену WinAPI. и компилятор
решил изучить WinAPI ну понял что муть.но хочется создать замену чтобы было все понятно и естественно компилятор.Предложите Ваши варианты и...

51
267 / 189 / 33
Регистрация: 15.01.2011
Сообщений: 681
11.07.2014, 08:27
Студворк — интернет-сервис помощи студентам
Убежденный, если кратко, то для каждой гайки нужен свой ключик ))
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
11.07.2014, 08:44
Цитата Сообщение от Psilon Посмотреть сообщение
Овальная кнопка на MFC
овальная кнопка на WPF
Знаете в чем шутка? Овальная - хорошо, а как на счет семиугольной несимметричной звезды на палке и под углом в тридцать градсов? На MFC это займет приблизительно столько же кода, что и овальная. А на WPF? Хорошо, если там задумались об овальности и сделали ее так легко реализуемой, но в данном случае это плохой пример. И плохой как раз из-за того, что в WPF это есть, а в MFC нет.
0
3178 / 1937 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
11.07.2014, 09:52
Цитата Сообщение от uglyPinokkio Посмотреть сообщение
аргументы за ExamDiff против KDiff3
ExamDiff удобен возможностью непосредственного редактирования обеих панелей (это полноценные редакторы) и легкостью перемещения произвольных (независимо от дельты) блоков кода между ними.

К слову, именно KDiff3 у меня довольно криво отображается (патамушта Qt).
Миниатюры
MFC WinApi для создания интерфейса  
1
327 / 230 / 55
Регистрация: 30.05.2014
Сообщений: 682
11.07.2014, 10:05
Цитата Сообщение от gazlan Посмотреть сообщение
ExamDiff удобен возможностью непосредственного редактирования обеих панелей (это полноценные редакторы) и легкостью перемещения произвольных (независимо от дельты) блоков кода между ними.
А, это да, это в WinMerge тоже нравилось, но KDiff3 лучше сливает. Не нашел в ExamDiff поддержки UTF-8, оно там есть?
0
3178 / 1937 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
11.07.2014, 10:38
Цитата Сообщение от uglyPinokkio Посмотреть сообщение
Не нашел в ExamDiff поддержки UTF-8
В документации не видел, но по факту есть. По крайней мере, текстовые файлы на русском сравнивает корректно.
Миниатюры
MFC WinApi для создания интерфейса   MFC WinApi для создания интерфейса   MFC WinApi для создания интерфейса  

0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
11.07.2014, 11:01
Цитата Сообщение от Psilon Посмотреть сообщение
gazlan, извиняюсь, что вмешиваюсь, но это не такое уж сложное приложение, опять же. Одна менюшка, десяток однотипных кнопочек и 2 richtextbox, которые из коробки поддерживают выделение и подсветку. Хотя может в MFC нету их, но контрол самый обычный.
- любой контрол в MFC имеет пропертю CustomDraw что позволяет отрисовать его по совему, более того имеется возможность создать Custom Control наделив его какими мы пожелаем свойствами и сделав его каким угодно.
Я искренне прошу людей ИМХО чьи знания в MFC на уровне достаточный минимум не делать экспертных оценок на уровне адвансд или профи.
0
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
11.07.2014, 13:43
Цитата Сообщение от gazlan Посмотреть сообщение
К слову, именно KDiff3 у меня довольно криво отображается (патамушта Qt).
Че не понятно что проблема с шрифтами, а с Qt ?

Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
- любой контрол в MFC имеет пропертю CustomDraw что позволяет отрисовать его по совему, более того имеется возможность создать Custom Control наделив его какими мы пожелаем свойствами и сделав его каким угодно.
Я искренне прошу людей ИМХО чьи знания в MFC на уровне достаточный минимум не делать экспертных оценок на уровне адвансд или профи.
Тоже самое можно сделать и в Qt и VСL.

Добавлено через 2 минуты
Цитата Сообщение от Psilon Посмотреть сообщение
От знакомых Qt-шников слышал, что там даже еще проще. Ну и рендер на видюхе как бонус.
В Qt к примеру нет родных компонентов для работы с графиками, как например в VCL, кстати gazlan в твоем примере родной контрол или самописный или сторонний ?
1
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
11.07.2014, 13:53
Такой подход с нынешним юзером не работает. Он, ленивая скотина, хочет чувствовать себя
защищенным, но ни хрена не хочет анализировать и вообще работать с данными, хочет
чувствовать ситуацию под контролем, но не пытаясь разобраться в "контролируемом" предмете.
Для таких и нужны навороченные графики реального времени и вообще GUI к задачам,
которые традиционно были демонами.

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

Еще раз: возьмите десктопное приложение под большую винду (это ваше изначальное
ограничение), ценность GUI для которого неоспорима. То есть, не сетевой экран со свистом.
Что это будет? В доброй половине случаев — приложение с документом в центре. То есть,
приложение, для которого контролы/компоненты оказываются на сугубо вспомогательных
ролях, как и библиотеки, построенные вокруг компонентно-контрольных форм.
позиция класс. "Если MFC что-то не умеет, а другие инструменты умеют, то это свистелки и перделки, которые не нужны. Если что-то умеет MFC, чего не умеют другие (как в примере с MDI) - то это отсутствия базового необходимейшего функционала, очередной признак, что MFC незаменим". Просто великолепно Я так что угодно могу доказать.

Цитата Сообщение от SatanaXIII Посмотреть сообщение
Знаете в чем шутка? Овальная - хорошо, а как на счет семиугольной несимметричной звезды на палке и под углом в тридцать градсов? На MFC это займет приблизительно столько же кода, что и овальная. А на WPF? Хорошо, если там задумались об овальности и сделали ее так легко реализуемой, но в данном случае это плохой пример. И плохой как раз из-за того, что в WPF это есть, а в MFC нет.
так овальная тоже займет столько же места, то есть 5 строчек
Кликните здесь для просмотра всего текста
XML
1
2
3
4
5
6
7
8
9
10
                        <Path Data="M 0,25 C 30,25 30,5    45,2.5  L 265 2.5  C 280,2.5  280,25 310,25 
                                    M 0,25 C 30,25 30,47.5 45,47.5 L 265 47.5 C 280,47.5 280,25 310,25"
                              Fill="{TemplateBinding Background}"
                              Stretch="Fill"
                              Stroke="CornflowerBlue"
                              StrokeThickness="5">
                            <Path.BitmapEffect>
                                    <BevelBitmapEffect BevelWidth="5" />
                            </Path.BitmapEffect>
                        </Path>
эффект:


Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
- любой контрол в MFC имеет пропертю CustomDraw что позволяет отрисовать его по совему, более того имеется возможность создать Custom Control наделив его какими мы пожелаем свойствами и сделав его каким угодно.
Я искренне прошу людей ИМХО чьи знания в MFC на уровне достаточный минимум не делать экспертных оценок на уровне адвансд или профи.
я делаю выводы на тему того, что вижу. Что любой чих сложнее стандартной прямоугольной кнопки вызывает сотни строк неочевидного кода. Единственный плюс, который тут указали на MFC, это то, что интерфейс является узкой прослойкой (это же и недостаток основной, кстати), поэтому все очень быстро работает. Очень рад. Только вот отрисовка интерфейса никогда не является узким местом, даже на шарпе можно сделать 70 000 fps отрисовки формы.
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
11.07.2014, 13:57
офк можно писать свои контролы, делать свою библиотечку, потом фреймворк, и потом переизобретать велосипед... Причем в случае майлешего изменения придется наследовать код и в нем вносить изменения, что весело скажется на последующей отладке.
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
11.07.2014, 14:02
Цитата Сообщение от Psilon Посмотреть сообщение
так овальная тоже займет столько же места, то есть 5 строчек
Давайте, уж наверняка что б, еще сводный пример кнопки в форме астролябии и я от вас отстану. Х))
0
3178 / 1937 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
11.07.2014, 14:02
Цитата Сообщение от Avazart Посмотреть сообщение
Че, непонятно, что проблема с шрифтами, а с Qt ?
Именно с Qt.

- От, из-звольте. Уся рота, ч-черт бы ее побрал, идет не в ногу. Один п-подпоручик идет в ногу. (с) Ал. Куприн "Поединок"
1
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
11.07.2014, 14:05
gazlan, кстати, лично я BeyondCompare использую, ну и для простых задач просто в Notepad++ смотрю. А вот насчет BC - вы смотрели его? Что можете сказать?..
0
3178 / 1937 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
11.07.2014, 14:05
Цитата Сообщение от Avazart Посмотреть сообщение
самописный или сторонний
Сильно "доработанный напильником" A 2D Lite Graph Control with Multiple Plot Support
0
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
11.07.2014, 14:18
Цитата Сообщение от gazlan Посмотреть сообщение
Именно с Qt.
Т.е. есть еще другое приложение на Qt которое также плохо отображает.
0
3178 / 1937 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
11.07.2014, 14:46
Цитата Сообщение от Psilon Посмотреть сообщение
насчет BC - вы смотрели его?
Давно и вскользь.

Ничего плохого сказать не могу, но к тому времени, когда я его впервые заметил, уже сформировалась устойчивая привычка к ExamDiff + я старательно избегаю всего, что не на C (только за явным преимуществом или если нет альтернативы). Кроме того, от DIFF-утилиты мне нужно только сравнение текстов (кода), для бинарных файлов я использую другие средства, а для всего прочего - Far, так что большая часть функциональности BC для меня избыточна.

Добавлено через 15 минут
Цитата Сообщение от Psilon Посмотреть сообщение
Что любой чих, сложнее стандартной прямоугольной кнопки, вызывает сотни строк неочевидного кода.
IMHO, это беда почти любого фреймворка и MFC не исключение.

Это как на болоте: или с кочки на кочку, или шаг в сторону - и ты в трясине.

Добавлено через 4 минуты
Цитата Сообщение от Avazart Посмотреть сообщение
другое приложение на Qt, которое также плохо отображает.
Есть несколько на Qt4 - те показывают нормально.
0
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
11.07.2014, 14:48
Цитата Сообщение от gazlan Посмотреть сообщение
IMHO, это беда почти любого фреймворка и MFC не исключение.
Да если ты не знаешь хорошо это фрейморк (или ты его создатель)

Добавлено через 56 секунд
Цитата Сообщение от gazlan Посмотреть сообщение
Есть несколько на Qt4 - те показывают нормально.
Ну так вывод ? Видимо просто криво написано (например разработчик просто использовал какой-то нехороший шрифт).
0
3178 / 1937 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
11.07.2014, 14:57
Цитата Сообщение от Avazart Посмотреть сообщение
использовал какой-то нехороший шрифт
Гм, возможно. Хотя, в меню так, обычно, не делают. Или, может быть, это проблема именно Qt5.
0
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
11.07.2014, 15:01
Цитата Сообщение от gazlan Посмотреть сообщение
Гм, возможно. Хотя, в меню так, обычно, не делают. Или, может быть, это проблема именно Qt5.
А это где? Под линукс?
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
11.07.2014, 15:29
Цитата Сообщение от Psilon Посмотреть сообщение
Что любой чих сложнее стандартной прямоугольной кнопки вызывает сотни строк неочевидного кода.
- у меня это занимает 1 строку манифеста причём сразу для целого ряда контролов. Потому и говорю
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
скренне прошу людей ИМХО чьи знания в MFC на уровне достаточный минимум не делать экспертных оценок на уровне адвансд или профи.
.Не хочу затевать холивар, стандартный гуй с МФК (тобишь увязанные пара модальных/неодальных окон листконтролы, можно кастомные и т.д, займут у меня в зависимости от настроения от 7-ми до 15 мин времени), так что давайте не будем спорить на ровном месте.
0
 Аватар для Voivoid
710 / 283 / 16
Регистрация: 31.03.2013
Сообщений: 1,340
11.07.2014, 15:33
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
- у меня это занимает 1 строку манифеста причём сразу для целого ряда контролов. Потому и говорю
Просвети
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.07.2014, 15:33

Базовые сложности создания интерфейса в MFC
Здравствуйте добрые люди. Передо мной встала задача написать первое GUI используя MFC. Я несколько растерян, и хочу попросить совета....

Софт для создания сенсорного интерфейса
Доброго времени суток форумчани. Перейду к делу. Можете ли вы мне посоветовать софт для создания сенсорного интерфейса. Пример &quot;...

3D редактор для создания интерфейса программы
Хочу сделать для своей программы элементы интерфейса с 3D видом, но опыта работы с 3D редакторами нет, буду учиться. Посоветуйте...

Какие нужны знания для создания веб-интерфейса для базы данных?
Есть БД, есть ПО для доступа к ней. ПО неудобное и пишется на стороне, хочется написать свой вэб-интерфейс для доступа к базе Что вообще...

Выбор инструментов для создания веб-интерфейса для доступа к базе данных
Доброго времени суток. Пролог: вопросы в конце, так как без предисловия и объяснения я их не мог задать корректно. Перейду сразу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Закрытая тема Создать тему
Новые блоги и статьи
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru