Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как совмещается [QT] и WinAPI под Windows 
:(
    Опции темы
XProgammer
Дата 9.12.2011, 11:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Вопрос от чайника. 

Есть ли в QT функции для работы с окнами Windows, например слежение за окнами, хуки, для работы с системными настройками и железом, или нужно подключать WinAPI? 

Если нужно, непонятно как перехватывать соответсвующие Windows-сообщения, например WH_CALLWNDPROC для хуков. Какой тут механизм?
PM MAIL   Вверх
bsa
Дата 9.12.2011, 11:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



примеры необходимого пожалуйста.
Просто есть многое. Можно перехватить события клавиш, можно события изменения размера окна... Конкретней.
И что ты понимаешь под "хуками"?
PM   Вверх
XProgammer
Дата 9.12.2011, 13:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Например нужно перехватить событие изменения активного окна. 
Или наподобие перехвата сообщения WM_DRAWCLIPBOARD в winap событие изменения содержимого буфера
Есть для этого набор функций в qt?
Или работать с компортом, лучше WINAPI использовать? чтоб не было тормозов?? если программа только под винду.
PM MAIL   Вверх
bsa
Дата 9.12.2011, 14:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Цитата(XProgammer @  9.12.2011,  14:03 Найти цитируемый пост)
Например нужно перехватить событие изменения активного окна. 
смена фокуса что ли? есть это
Цитата(XProgammer @  9.12.2011,  14:03 Найти цитируемый пост)
Или наподобие перехвата сообщения WM_DRAWCLIPBOARD в winap событие изменения содержимого буфера
ищи описание QClipboardEvent

Цитата(XProgammer @  9.12.2011,  14:03 Найти цитируемый пост)
Или работать с компортом, лучше WINAPI использовать? чтоб не было тормозов?? если программа только под винду. 
Если не секрет, а что ты делать с ним собрался? Скорость данного порта очень низкая, поэтому тормозов быть в принципе не может.
На данный момент в Qt не штатной поддержки последовательных портов. Сейчас идет активное продвижение его сторонней реализации для включения в Qt. Сотрудники Nokia уже подтвердили готовность. Сейчас идет урегулирования юридических вопросов о передаче прав на код.
PM   Вверх
XProgammer
Дата 9.12.2011, 18:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



ок, спасибо за развернутый ответ, немного разобрался, просто собрался переходить с MFC на QT под windows, хочу застраховаться что проблем больших не будет, и все возможности winapi при надобности останутся  smile 

Это сообщение отредактировал(а) XProgammer - 14.12.2011, 00:54
PM MAIL   Вверх
spyswamp
Дата 9.12.2011, 18:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



А каковы будут основные плюсы перехода на Qt?



--------------------
- why you call it beta?
- cuz it's betta then nothin'
PM MAIL   Вверх
XProgammer
Дата 9.12.2011, 19:04 (ссылка) |   (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



QT это абсолютно другой образ мышления, приятно иметь дело, простота, понятность, и логичность, сделано для человека. Когда писали MFC то судя по всему жестко привязались к WinAPI, и, что получилось, неудобно использовать. Это с моей точки зрения))
PM MAIL   Вверх
spyswamp
Дата 9.12.2011, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



QT - это QuickTime.

Кстати, для MFC уже давно существует крутая и развиваемая надстройка от BCGSoft. С ней работать достаточно приятно. Единственный, на мой взгляд, минус - цена. Т.е. подходит только для корпоративного использования.


--------------------
- why you call it beta?
- cuz it's betta then nothin'
PM MAIL   Вверх
XProgammer
Дата 9.12.2011, 21:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



спасибо, посмотрю))

PM MAIL   Вверх
bsa
Дата 11.12.2011, 19:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Цитата(XProgammer @  9.12.2011,  19:02 Найти цитируемый пост)
ок, спасибо за развернутый ответ, немного разобрался, просто собрался переходить с MFC на QT под windows, хочу застратраховаться что проблем больших не будет, и все возможности winapi при надобности останутся

Все возможности останутся. Вот только далеко не всегда они нужны... Просто когда переходишь на Qt надо максимально забыть о существовании нативных средств системы. И только в случае отсутствия в Qt необходимого функционала прибегать к использованию API системы. Причем, желательно это завернуть так, чтобы в основном коде программы не API никак не проявлялся. Qt же кроссплатформенная. И рано или поздно может возникнуть соблазн собрать программу под другие ОС. А если у тебя код пронизан WinAPI, то править придется много, так что станет лень.
PM   Вверх
XProgammer
Дата 14.12.2011, 00:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



спасибо за советы!
может и придется перейти на другую ос.


PM MAIL   Вверх
spyswamp
Дата 15.12.2011, 16:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Я б на твоем месте уже давно перешел и забыл про венду. smile


--------------------
- why you call it beta?
- cuz it's betta then nothin'
PM MAIL   Вверх
XProgammer
Дата 15.12.2011, 20:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



ну я пишу программы для заводов,
в случае чего, винду легко переставить человеку, далекому от компутеров, а про линь например многие и не слышали)
PM MAIL   Вверх
bsa
Дата 15.12.2011, 20:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Цитата(XProgammer @  15.12.2011,  21:16 Найти цитируемый пост)
в случае чего, винду легко переставить человеку, далекому от компутеров, а про линь например многие и не слышали) 

Супер! Фраза из разряда "спичку зажечь может каждый, а о тринитротолуоле многие и не слышали"... Так вот, современный Linux ставится не сложнее, чем Windows. Причем, некоторые диструбутивы дают возможность побаловаться с ними до установки.
Если системный администратор не знает о Linux'е, то гнать его надо с завода - он не компетентен в своей области.
Если на заводе каждый сотрудник может переустановить систему - гнать надо начальника IT отдела.
PM   Вверх
spyswamp
Дата 15.12.2011, 21:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Это все утопия. Сотрудники провайдеров не могут настроить интернет на линуксе. Хотя в той же Убунте это делается в 4 раза быстрее, чем в винде, т.к. нет тонны модальных окон и закладок. :(


--------------------
- why you call it beta?
- cuz it's betta then nothin'
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets"
JackYF
Любитель
  • В заголовке темы в квадратных скобках обозначьте используемую вами библиотеку, например: [QT],[GTK],[wx].
  • Если вопрос актуален только для некоторой версии библиотеки, либо, если вы пользуетесь не самой последней версией, укажите это. Например: [QT4], [GTK2].
  • Все начинающие изучать Qt - не забудьте зайти сюда.
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • В вопросе укажите полную версию версию библиотеки, а также все дополнительные используемые программные пакеты.
  • Не забывайте пользоваться кнопкой "Код".
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема »


 




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


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

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