Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Операционные системы > Linux (Ubuntu, Debian, Red Hat, CentOS, Mint)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.10.2012, 15:54   #1
_PROGRAMM_
Участник клуба
 
Аватар для _PROGRAMM_
 
Регистрация: 30.07.2009
Сообщений: 1,603
По умолчанию Программирование оконных приложений Linux

Блуждая по просторам интернета, я узнал, что для программирования оконного интерфейса в Linux используется Qt. На мой взгляд, ее использование скрывает принцип создания окон в Windows/Linux/MacOS и других операционных систем. Есть очень интересная книга Ганеева: Проектирование интерфейса средствами Win32 API. В ней, хотя уже и не помню, рассказывается, о создании окна средствами Win Api. Я хочу, имея компилятор g++ создать на c++ в Linux пустое окно.
Но достижение результата не так важно. Главное для меня - понять, каким образом осуществляется связь с мышью, клавиатурой. Например, в Windows - это события, которые имеют уникальные значения, содержащиеся в константах WM_MOUSEDOWN/UP/MOVE WM_KEYDOWN/../.. и тому подобное. Как это осуществляется в Linux? Хотелось бы получить верное направление, а не долгое скитание в поисках этих крошечных, невостребованных знаний. Может есть книга, подобная Ганееву? У меня нет желания создавать все визуально. То окно, которое я хочу сделать, должно быть написано в одном текстовом файле. Возможно ли такое?
Заранее благодарю.

В мире нет вечных двигателей, зато есть вечные тормоза...

Блог
_PROGRAMM_ вне форума Ответить с цитированием
Старый 28.10.2012, 17:49   #2
xwicked
Участник клуба
 
Аватар для xwicked
 
Регистрация: 21.03.2010
Сообщений: 1,508
По умолчанию

Лёгкий гуглёж выдал Это
Вариант с Xorg.
Для большего хардкора - смотри исходники XLib
Google - лучший помощник программиста.
---
моя лаборатория | мой FaceBook
xwicked вне форума Ответить с цитированием
Старый 29.10.2012, 07:14   #3
_PROGRAMM_
Участник клуба
 
Аватар для _PROGRAMM_
 
Регистрация: 30.07.2009
Сообщений: 1,603
По умолчанию

Спасибо, то что нужно. А как вы гуглили? Я раз за разом на Qt попадал.

В мире нет вечных двигателей, зато есть вечные тормоза...

Блог
_PROGRAMM_ вне форума Ответить с цитированием
Старый 29.10.2012, 13:21   #4
xwicked
Участник клуба
 
Аватар для xwicked
 
Регистрация: 21.03.2010
Сообщений: 1,508
Подмигивание

Цитата:
программирование c++ xorg
В первом посте по первой ссылке увидел слово
Цитата:
Xlib
Припоминая, что когда упоминают об linux API часто фигурирует библиотека libc.so. Исходя из этого предположил, что "Xlib" - это и есть API Xorg.
Далее вбил:
Цитата:
программирование xlib c++
и третья ссылка оказалась той, что была нужна.
Послесловие.
Всё приходит с опытом, наверное... Это, кстати только с Xorg. Но он вроде самый распространённый сейчас.
Google - лучший помощник программиста.
---
моя лаборатория | мой FaceBook
xwicked вне форума Ответить с цитированием
Старый 29.10.2012, 14:05   #5
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 18,136
По умолчанию

Есть и более высокоуровневые средства, например GamBas. Там пофигу qt или gtk к примеру. С чем библиотеки проставлены в то и скомпилите.

Цитата:
То окно, которое я хочу сделать, должно быть написано в одном текстовом файле. Возможно ли такое?
Есть glade что-то типа xaml. Впрочем инструмент тоже высокоуровневый.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 29.10.2012, 15:54   #6
_PROGRAMM_
Участник клуба
 
Аватар для _PROGRAMM_
 
Регистрация: 30.07.2009
Сообщений: 1,603
По умолчанию

Я низкие уровни предпочитаю. С высокими проблем не возникало. Когда я писал об одном текстовом файле я расчитывал не использовать ничего стороннего. Вообще, когда я создавал тему, мной управляла потребность в обработке событий окна. Потом захотелось более углубленно изучить. Ну да ладно.
--
Насчет предоставленного материала. По ссылке расположен более читаемый вариант.
http://gazette.linux.ru.net/lg78/art...s-tougher.html

В мире нет вечных двигателей, зато есть вечные тормоза...

Блог

Последний раз редактировалось _PROGRAMM_; 29.10.2012 в 15:56.
_PROGRAMM_ вне форума Ответить с цитированием
Старый 29.10.2012, 17:49   #7
xwicked
Участник клуба
 
Аватар для xwicked
 
Регистрация: 21.03.2010
Сообщений: 1,508
По умолчанию

Пусть никого не пугает то, что для linux есть несколько вариантов. Так как в Винде он один и располагается в таких же библиотеках. Ниже Xlib, нужно изучать glibc и будет профит. А пока Xlib, я думаю вполне можно приравнять к Win API, тогда она не будет казаться "сторонней"
Google - лучший помощник программиста.
---
моя лаборатория | мой FaceBook

Последний раз редактировалось xwicked; 30.10.2012 в 02:54.
xwicked вне форума Ответить с цитированием
Старый 29.10.2012, 21:38   #8
_PROGRAMM_
Участник клуба
 
Аватар для _PROGRAMM_
 
Регистрация: 30.07.2009
Сообщений: 1,603
По умолчанию

Цитата:
А пока Xlib, я думаю вполне вожно приравнять к Win AP
Я так и понял. Хотя было предположение, что есть более низкий вариант.

В мире нет вечных двигателей, зато есть вечные тормоза...

Блог
_PROGRAMM_ вне форума Ответить с цитированием
Старый 29.11.2012, 02:12   #9
Boltok
 
Регистрация: 28.11.2012
Сообщений: 3
По умолчанию

Чтобы не плодить темы по Xlib. Just one Curiosity:
При создании приложения (окошка) на Xlib в Ubuntu если его запустить через терминал, а потом закрыть стандартной кнопочкой с крестиком, а не по KeyPressEvent или т.п., то в терминале появиться сообщение:

Цитата:
XIO: fatal IO error 11 (Resource temporarily unavailable) on X server ":0.0"
after 459 requests (41 known processed) with 0 events remaining.
И, собственно, вечный отечественный вопрос: кто виноват и что делать?
Как бы этой надписи избежать? Виноват какой-то не прописанный ручками Event? Что прописать в исходнике?
Использую Ubuntu 9.04, но думаю, что релиз не сильно важен.
Boltok вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Различия WinAPI и создание оконных приложений VS Studio Sauber Общие вопросы C/C++ 13 03.07.2012 19:21
Создание оконных приложений на Си Blade Общие вопросы C/C++ 13 06.02.2009 23:57
Литература по созданию оконных приложений TIN Общие вопросы C/C++ 15 30.12.2008 12:52
С++ литература по созданию оконных приложений TIN Помощь студентам 1 07.12.2008 18:52
литература по созданию оконных приложений Rio309 Общие вопросы C/C++ 0 18.11.2008 20:03