![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
RazrFalcon |
![]()
Сообщение
#1
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: ![]() ![]() ![]() |
К примеру есть "ядро" программы. Нужно чтоб она работала из консоли. К примеру путь к текстовому файлу задаем, потом она его обрабатывает, и сохраняет в другой, путь к которому мы тоже прописали. Но нужно чтоб была еще и оболочка графическая, но отдельно. Где можно подробно почитать о таком.
1) как обратится из gui к "ядру", и на оборот 2) как вообще работать с qt cli или проще все таки обычный c++ & gcc С уже готовыми прогами чаще всего работаю именно через консоль. Хочу попробовать свою написать. PS: Ubuntu 10.04 + QT 4.7 +QT Creator |
|
|
![]() |
kuzulis |
![]()
Сообщение
#2
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 393 Регистрация: 29.6.2009 Пользователь №: 862 Спасибо сказали: 36 раз(а) Репутация: ![]() ![]() ![]() |
Ну так пиши обычное GUI приложение, у которого по умолчанию не показывается гуи, т.е. когда ты его запускаешь с определенными аргументами - то оно как консоль, если с другими - то оно как гуй...
Парси или аргументы командной строки или конфиг в конфиг файле и в зависимости от этого или показывай или нет Гуй. Или что тебе нужно то? |
|
|
RazrFalcon |
![]()
Сообщение
#3
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: ![]() ![]() ![]() |
Цитата(kuzulis @ 24.9.2010, 12:58) Link Ну так пиши обычное GUI приложение, у которого по умолчанию не показывается гуи, т.е. когда ты его запускаешь с определенными аргументами - то оно как консоль, если с другими - то оно как гуй... Некогда о таких не слышал ![]() Допустим я напишу приложение без отображения гуя, а как же мне ему агрументы в консоли передать. К примеру temp -cli -in "in" -out "out", что то в таком духе. Ну а если просто запускаю то он с гуй. Но хотелось бы именно 2-а разных файла. Для гуй и клай отдельно. |
|
|
Sokoloff |
![]()
Сообщение
#4
|
Участник ![]() ![]() Группа: Участник Сообщений: 237 Регистрация: 1.4.2009 Из: Москва Пользователь №: 654 Спасибо сказали: 50 раз(а) Репутация: ![]() ![]() ![]() |
Цитата(RazrFalcon @ 24.9.2010, 13:50) Link К примеру есть "ядро" программы. Нужно чтоб она работала из консоли. К примеру путь к текстовому файлу задаем, потом она его обрабатывает, и сохраняет в другой, путь к которому мы тоже прописали. Но нужно чтоб была еще и оболочка графическая, но отдельно. Где можно подробно почитать о таком. 1) как обратится из gui к "ядру", и на оборот 2) как вообще работать с qt cli или проще все таки обычный c++ & gcc С уже готовыми прогами чаще всего работаю именно через консоль. Хочу попробовать свою написать. PS: Ubuntu 10.04 + QT 4.7 +QT Creator Для запуска CLI программы можно использовать Link. Но есть и другой вариант, весь функционал программы выносишь в библиотеку, и CLI и GUI используют эту библиотеку. В CLI остается только проверка входных параметров, печать ошибок и результатов работы. А в GUI только формы. |
|
|
RazrFalcon |
![]()
Сообщение
#5
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: ![]() ![]() ![]() |
Цитата(Sokoloff @ 24.9.2010, 13:49) Link Но есть и другой вариант, весь функционал программы выносишь в библиотеку, и CLI и GUI используют эту библиотеку. В CLI остается только проверка входных параметров, печать ошибок и результатов работы. А в GUI только формы. Вот как сделать туже библиотеку я и не знаю, не знаю как передать в cli параметры, как принять все эти --help/-in "in" и тд. Как из гуй подключится к lib, в моем случае .so как я понимаю и тд. |
|
|
s200999900 |
![]()
Сообщение
#6
|
Новичок Группа: Новичок Сообщений: 1 Регистрация: 29.5.2010 Пользователь №: 1765 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Цитата(RazrFalcon @ 24.9.2010, 12:50) Link К примеру есть "ядро" программы. Нужно чтоб она работала из консоли. К примеру путь к текстовому файлу задаем, потом она его обрабатывает, и сохраняет в другой, путь к которому мы тоже прописали. Но нужно чтоб была еще и оболочка графическая, но отдельно. Где можно подробно почитать о таком. 1) как обратится из gui к "ядру", и на оборот 2) как вообще работать с qt cli или проще все таки обычный c++ & gcc С уже готовыми прогами чаще всего работаю именно через консоль. Хочу попробовать свою написать. PS: Ubuntu 10.04 + QT 4.7 +QT Creator Если интересует вариант отвязки логики программы от интерфейса (gui/cli) то в suse линуксе есть хороший вариант: Link "....Earlier this year, Stefan announced the availability of the YaST user interface engine separate from YaST itself. The user interface engine, packaged in yast2-libyui (source code here),provides the abstraction from graphical user interfaces (Qt, Gtk) and text based (ncurses) user interfaces. It now can be used independently of YaST2 for generic (C++) applications....." Но сам не разбирался с возможностью использования на убунту, если получится, отпишитесь пожалуйста. |
|
|
Sokoloff |
![]()
Сообщение
#7
|
Участник ![]() ![]() Группа: Участник Сообщений: 237 Регистрация: 1.4.2009 Из: Москва Пользователь №: 654 Спасибо сказали: 50 раз(а) Репутация: ![]() ![]() ![]() |
Цитата(RazrFalcon @ 24.9.2010, 15:04) Link Цитата(Sokoloff @ 24.9.2010, 13:49) Link Но есть и другой вариант, весь функционал программы выносишь в библиотеку, и CLI и GUI используют эту библиотеку. В CLI остается только проверка входных параметров, печать ошибок и результатов работы. А в GUI только формы. Вот как сделать туже библиотеку я и не знаю, не знаю как передать в cli параметры, как принять все эти --help/-in "in" и тд. Как из гуй подключится к lib, в моем случае .so как я понимаю и тд. Как сделать библиотеку: Link Link И Link Про параметры написано в Link и в Link. Кстати Link описано как сделать приложение, которое будет работать в двух режимах CLI/GUI. |
|
|
RazrFalcon |
![]()
Сообщение
#8
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: ![]() ![]() ![]() |
Спасибо, по разбираемся сейчас.
|
|
|
Litkevich Yuriy |
![]()
Сообщение
#9
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
RazrFalcon, посмотреть программу которая анализирует аргументы командной строки можно, например, Link, там используются исходники из сторонней библиотеки, для удобной работы с аргументами.
|
|
|
RazrFalcon |
![]()
Сообщение
#10
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: ![]() ![]() ![]() |
Прошу прощения за нубовство, но что делать с qDebug?
Элементарный код:
Сообщение отредактировал RazrFalcon - 27.9.2010, 15:33 |
|
|
kwisp |
![]()
Сообщение
#11
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
RazrFalcon,
а что ты собственно хотел получить? функция number() - статическая и не изменяет обЪект строки который её вызывает а возвращает строку с номером! это s.number(x); надо заменить на s = s.number(x); или s = QString::number(x); или s.setNum(x); |
|
|
RazrFalcon |
![]()
Сообщение
#12
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: ![]() ![]() ![]() |
Да уш, протупил, давно на кьюте не писал.
Вопрос по теме: Все примеры у меня компилятся и работают из выше написаны ссылок. Но к qt их отношения не вижу=/, разве что как изучение основ. Ну в принципе пока более мене понятно что с консолькой делать, еще с аргументами разберусь и норм. Вопрос в другом. Как подключится из gui/cli к .so ? Мне нужна именно динамическая библиотека. То есть, как собрать .so (ну и .a на будущие) и использовать его в своем приложении. Гугл выдают противоречивые результаты. PS я так понимаю что динамическая библиотека не идет как отдельный процесс, а если я буду использовать исполняемый файл, то он уже будет отдельным процессом. ![]() |
|
|
kwisp |
![]()
Сообщение
#13
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
RazrFalcon,
создай отдельную тему пожалуйста и подробно опиши вопрос. один вопрос - одна тема. |
|
|
RazrFalcon |
![]()
Сообщение
#14
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: ![]() ![]() ![]() |
![]() Это та же тема. Я просто сам еще не совсем разобрался. 1) У меня есть бинарник (консольный) + gui = как вызывать функции из cli 2) У меня есть GUI + расширяющие функционал .so (динамические библиотеки) = Прога делает расчет по функциям из библиотек. Я просто не совсем понимаю как правильнее. GUI + CLI + .so = идеальный вариант То есть как бы на выбор что ли ![]() Одним словом я хочу разобраться как послать в библиотеку переменные, она их обработала и вернула мне решение (это я так понимаю как раз гуй+бинарник). А библиотека я так понимаю нужна... толку с нее вообще тогда?! |
|
|
Litkevich Yuriy |
![]()
Сообщение
#15
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
Цитата(RazrFalcon @ 27.9.2010, 20:29) Link Как подключится из gui/cli к .so ? это отдельная тема от QT CLI+GUI
|
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 22.8.2025, 6:56 |