Получение аргументов в GUI приложении |
Здравствуйте, гость ( Вход | Регистрация )
Получение аргументов в GUI приложении |
RazrFalcon |
5.5.2011, 14:26
Сообщение
#1
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
Как в консольном получить - ясно.
А вот как, тоже самое, сделать в обычном Qt GUI проекте? main.cpp Все выводится нормально.Вопрос: как получить arguments в mainwindow.cpp? Как их соединить? Пробовал так: Но мне сразу выдает:error: invalid use of ‘this’ in non-member function Сообщение отредактировал RazrFalcon - 5.5.2011, 14:28 |
|
|
Sergey B. |
5.5.2011, 15:09
Сообщение
#2
|
Студент Группа: Новичок Сообщений: 16 Регистрация: 12.2.2008 Пользователь №: 92 Спасибо сказали: 1 раз(а) Репутация: 0 |
В MainWindow - сделать public функцию, которая получает то - что выдаёт a.arguments()
и сохраняет это в каком-то контейнере у себя в присат секции, тогда: QApplication a(argc, argv); MainWindow w; w.получить_аргументы(a.arguments() ); w.show(); и далее по тексту... |
|
|
wiz29 |
5.5.2011, 16:19
Сообщение
#3
|
Старейший участник Группа: Участник Сообщений: 600 Регистрация: 7.7.2010 Из: Санкт-Петербург Пользователь №: 1866 Спасибо сказали: 94 раз(а) Репутация: 12 |
QCoreApplication::arguments();
|
|
|
RazrFalcon |
5.5.2011, 22:00
Сообщение
#4
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
Создавал public QString, и в него передавал как писал Sergey B., но возвращало пустоту...
wiz29, спасибо! Работает. Я знал, что есть способ по проще. |
|
|
Litkevich Yuriy |
6.5.2011, 7:00
Сообщение
#5
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
RazrFalcon |
6.5.2011, 7:28
Сообщение
#6
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
Пробовал так: А что такое this в данном контексте?MainWindow *w = new MainWindow(this,a.arguments()); Без понятия, я с этим так и не разобрался. Просто менял на Что бы через него передавать аргументы.*где в инете нашел. В этом я не силен... Сообщение отредактировал RazrFalcon - 6.5.2011, 7:28 |
|
|
Алексей1153 |
6.5.2011, 19:26
Сообщение
#7
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
RazrFalcon, this в данном случае не определён, так как main не является нестатической функцией-членом некоего класса/структуры
кроме того, в конструктор MainWindow тебе нужно передать указатель на объект, произведённый от QWidget. Если такого объекта нет, то передавай 0 |
|
|
RazrFalcon |
6.5.2011, 19:34
Сообщение
#8
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
Это как? Можно пример?
|
|
|
Алексей1153 |
6.5.2011, 19:44
Сообщение
#9
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
пример чего ?
А по сабжу - просто передай через конструктор главного окна аргументы int argc, char *argv[] и дальше разбирай их как обычно |
|
|
RazrFalcon |
6.5.2011, 19:52
Сообщение
#10
|
Zombie Mod Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212 |
Мне нужен пример(маленький) кода, чтобы понять как это работает.
|
|
|
Текстовая версия | Сейчас: 2.1.2025, 16:40 |