Переход на другую форму., А также мелкие дурацкие вопросы |
Здравствуйте, гость ( Вход | Регистрация )
Переход на другую форму., А также мелкие дурацкие вопросы |
alexeyfenix |
9.3.2012, 12:44
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 5 Регистрация: 9.3.2012 Пользователь №: 3256 Спасибо сказали: 0 раз(а) Репутация: 0 |
Доброго времени суток. Пожалуйста не кидайтесь тапками, поскольку вопрос наверняка до идиотизма простой.
Я хочу сделать банальный переход с одной формы на другую(с widget на labrab). Проблема в том, что я не могу понять, почему у меня открывает форму с названием Programm, когда в коде ясно написано и объявлено другое имя - labrab Помогите решить эту мелкую проблему пожалуйста. |
|
|
ilyabvt |
9.3.2012, 16:30
Сообщение
#2
|
Активный участник Группа: Участник Сообщений: 297 Регистрация: 23.6.2011 Пользователь №: 2765 Спасибо сказали: 45 раз(а) Репутация: 3 |
.pro это файл проекта, а вовсе не форма. Почитать можно здесь: http://qt-project.org/doc/qt-4.8/qmake-project-files.html.
Теперь по поводу имени: labrab - это имя переменной, то как вы обзываете объект класса, не может влиять на значения переменных этого класса. А имя формы это всего лишь переменная типа QString. http://qt-project.org/doc/qt-4.8/qwidget.h...indowTitle-prop. "If no caption has been set, the title is based of the windowFilePath." Это значит что если вы не меняли имя специально, то по умолчанию будет использоваться windowFilePath. Что это такое можно узнать пройдя по ссылке в документации (http://qt-project.org/doc/qt-4.8/qwidget.h...owFilePath-prop). |
|
|
alexeyfenix |
9.3.2012, 16:43
Сообщение
#3
|
Новичок Группа: Новичок Сообщений: 5 Регистрация: 9.3.2012 Пользователь №: 3256 Спасибо сказали: 0 раз(а) Репутация: 0 |
Спасибо,что ответили! Имя второй формы я поменял на labrab тоже. Я ценю,что Вы меня направляете к первоисточникам, правда ответа,при уровне знания моего английского, они не дают.
Меня больше всего раздражает что всеобщий FAQ в интернете и в книгах очень мягко и аккуратно описывает методы программирования на уровне среднего,а такие тупые вопросы как "что бы перейти на другую форму,надо: или: что бы сделать это: надо". Когда я изучал С++.было гораздо проще. Даже в Делфи интуитивно понятно как это делать было,а в Qt этого не получается. |
|
|
ilyabvt |
9.3.2012, 17:18
Сообщение
#4
|
Активный участник Группа: Участник Сообщений: 297 Регистрация: 23.6.2011 Пользователь №: 2765 Спасибо сказали: 45 раз(а) Репутация: 3 |
alexeyfenix Есть неплохая книга "QT4. Программирование GUI на С++" авторы Жасмин Бланшет и Марк Саммерфилд. В ней все объясняется с самого начала пошагово и довольно подробно. Насчет документации, на этом сайте есть частично переведенная, но конечно лучше юзать английский вариант, со словарем или Google translate, но хоть как то. Тем более что документация написана довольно простым языком (ну во всяком случае те разделы с которыми я сталкивался). Еще можно задавать вопросы на форумах, иногда на них даже отвечают .
|
|
|
alexeyfenix |
9.3.2012, 17:33
Сообщение
#5
|
Новичок Группа: Новичок Сообщений: 5 Регистрация: 9.3.2012 Пользователь №: 3256 Спасибо сказали: 0 раз(а) Репутация: 0 |
alexeyfenix Есть неплохая книга "QT4. Программирование GUI на С++" авторы Жасмин Бланшет и Марк Саммерфилд. В ней все объясняется с самого начала пошагово и довольно подробно. Насчет документации, на этом сайте есть частично переведенная, но конечно лучше юзать английский вариант, со словарем или Google translate, но хоть как то. Тем более что документация написана довольно простым языком (ну во всяком случае те разделы с которыми я сталкивался). Еще можно задавать вопросы на форумах, иногда на них даже отвечают . Знаю сию книгу. Для таких новичков,как я - отвратительная книга,иначе бы я сюда не писал. Макс Шлее гораздо лучше, НО также в нем нет этого простейшего перехода на другую форму, от которой избегаете сейчас и Вы, посылая меня на всяческие форумы и документации Рассматриваются коды среднего и сложного уровня , они подробно разбираются,а дурацкого перехода нет! И видимо его никто не скажет, потому что в золотом и удобном Qt все делается как-то через одно место,не нативно |
|
|
Litkevich Yuriy |
9.3.2012, 18:19
Сообщение
#6
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
нажал на кнопку - открылось новое окно. Это очень популярная штука, ищи по форуму.
И вот ещё хорошее учебное пособие, в нём есть такая функциональность |
|
|
alexeyfenix |
9.3.2012, 18:34
Сообщение
#7
|
Новичок Группа: Новичок Сообщений: 5 Регистрация: 9.3.2012 Пользователь №: 3256 Спасибо сказали: 0 раз(а) Репутация: 0 |
Спасибо за ответ! По форуму проследил страниц 20,ничего похожего нет.
ИЗ примера вообще не понимаю, где там присутсвует 2е окно.да и стоит ли идти в горуП.С. Я об этом и говорю что "нажал на кнопку,открылась новая форма" - в простом варианте нет. Уже 6й пост,а толкового решения нет,при всем желании помочь. должно быть Сложнов в простом,а не наоборот. У Qt как раз наоборот... Что б понять как открыть одну *****ю форму,нужно перерыть тонну документации и примеров,косвенно относящиеся к этой микрофункции. |
|
|
Litkevich Yuriy |
10.3.2012, 8:48
Сообщение
#8
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Изучай учебные пособия, там всё просто, нянчится с тобой никто не будет.
П.С. заодно научись мысли формулировать и писать без ошибок, в противном случае декодировать твои сообщения пользователям вообще станет лень. |
|
|
alexeyfenix |
10.3.2012, 13:11
Сообщение
#9
|
Новичок Группа: Новичок Сообщений: 5 Регистрация: 9.3.2012 Пользователь №: 3256 Спасибо сказали: 0 раз(а) Репутация: 0 |
Изучай учебные пособия, там всё просто, нянчится с тобой никто не будет. П.С. заодно научись мысли формулировать и писать без ошибок, в противном случае декодировать твои сообщения пользователям вообще станет лень. Понятно. Никто не в состоянии этого написать доходчиво и понятным языком. |
|
|
Steklova Olga |
11.3.2012, 11:22
Сообщение
#10
|
Участник Группа: Участник Сообщений: 198 Регистрация: 27.9.2011 Из: Санкт-Петербург Пользователь №: 2912 Спасибо сказали: 5 раз(а) Репутация: 4 |
Привет, alexeyfenix
1) Посмотрите следующий код: test_fenix.pro
main.cpp
mainwidget.h
mainwidget.cpp
widget1.h
widget1.cpp
2) Посмотрите пример, который посоветовал Litkevich Yuriy. Откройте в нем part7.pro. В addressbook.cpp в конструкторе есть В AddressBook::findContact() есть А кнопка findButton становится доступной после добавления трех записей.3) Предлагаю создавать проекты без форм ui. Не все вещи можно сделать в дизайнере, проще сделать их ручками. 4) Раньше тоже работала с Delphi. 5) Не путайте форму в Delphi и форму в Qt. В Delphi при добавлении новой формы к проекту создаются два файла: dfm и pas, а в Qt при добавлении к проекту нового файла "Qt" "Форма Qt Designer" создается один файл: ui. А вот при добавлении к проекту нового файла "Qt" "Класс формы Qt Designer" создаются три файла: ui, h и cpp. А вы что наделали? Создали форму. Сохранили файл с именем labrab.ui. При нажатии на кнопку создали к тому же еще и виджет, который зачем-то тоже назвали labrab, отобразили его. Но этот виджет-то никакого отношения не имеет к созданной вами форме. 6) Если создавать виджеты, как это вы делаете, то они будут открываться как окна, имеющие в заголовке имя проекта. Что написали, то и получили. Разбирайтесь. Успехов! Сообщение отредактировал Steklova Olga - 11.3.2012, 12:16 |
|
|
Текстовая версия | Сейчас: 26.12.2024, 4:56 |