Название: Передача параметров между окнами Отправлено: Ruslan от Апрель 03, 2018, 11:44 День добрый! Возможно ли передавать параметры из одного окна ui через глобальную переменную по типу STATIC в другое окно ui, при этом окна ui находятся в разных файлах.
Спасибо! Название: Re: Передача параметров между окнами Отправлено: qate от Апрель 03, 2018, 14:50 а сразу себе в ногу выстрелить, не ?
сигналы и слоты ведь для этого придумали Название: Re: Передача параметров между окнами Отправлено: Ruslan от Апрель 03, 2018, 16:31 не знал, что это равносильно стрельбе в себя)...я только учусь...т.е. параметры из одного файла в другой нужно передавать с помощью сигнально-слотового соединения?
Название: Re: Передача параметров между окнами Отправлено: qate от Апрель 03, 2018, 17:21 да, ибо сразу потокобезопасно
Название: Re: Передача параметров между окнами Отправлено: Igors от Апрель 04, 2018, 12:45 а сразу себе в ногу выстрелить, не ? сигналы и слоты ведь для этого придумали да, ибо сразу потокобезопасно Мда, ответики те еще :) Между тем слот-сигнал - штука довольно спорная, может лучше сначала научиться рисовать геттеры и статики? Название: Re: Передача параметров между окнами Отправлено: qate от Апрель 04, 2018, 17:04 в чем спорность ?
сигнал слот хуже статической переменной к которой еще и мутекс нужен ? Название: Re: Передача параметров между окнами Отправлено: Ruslan от Апрель 04, 2018, 17:32 что такое мутекс?
Название: Re: Передача параметров между окнами Отправлено: Ruslan от Апрель 04, 2018, 17:38 Мда, ответики те еще :) Между тем слот-сигнал - штука довольно спорная, может лучше сначала научиться рисовать геттеры и статики?
[/quote] так можно передать параметры из одного файла в другой? т.е. предположим проект состоит из 3 окон и дерево проекта имеет следующие файлы: window1.h window2.h window3.h window1.cpp window2.cpp window3.cpp window1.ui window2.ui window3.ui при вызове window2 из window1 мне надо понять какая именно кнопка его вызвала и следовательно передать параметр для window2 Название: Re: Передача параметров между окнами Отправлено: Авварон от Апрель 04, 2018, 19:13 Можно, я не против:)
Название: Re: Передача параметров между окнами Отправлено: qate от Апрель 05, 2018, 08:51 при вызове window2 из window1 мне надо понять какая именно кнопка его вызвала и следовательно передать параметр для window2 задай вопрос правильно, как и изначальный Название: Re: Передача параметров между окнами Отправлено: Ruslan от Апрель 05, 2018, 09:50 Можно, я не против:) Вы не против, спасибо), а система?, такой подход правильный или я опять самоубийством занимаюсь? Название: Re: Передача параметров между окнами Отправлено: Ruslan от Апрель 05, 2018, 09:52 при вызове window2 из window1 мне надо понять какая именно кнопка его вызвала и следовательно передать параметр для window2 задай вопрос правильно, как и изначальный к сожалению я путаюсь в терминах и мне тяжело задавать правильно вопрос, для меня разницы между первым вариантом и вторым, когда продемонстрировал дерево проекта - нет, и я не понимаю в чем не правильность(((...объясните...буду рад понять!!! Название: Re: Передача параметров между окнами Отправлено: Ruslan от Апрель 05, 2018, 10:29 Ещё один вариант вопроса: "Как передать параметры, или каким способом, из одного окна ui в другое окно ui, при этом окна ui находятся в разных файлах".
Название: Re: Передача параметров между окнами Отправлено: ViTech от Апрель 05, 2018, 12:01 Ruslan, какие-то неприличные вопросы вы задаёте :). Вряд ли кто тут будет разжёвывать азы работы с Qt или объяснять значения терминов, которые гуглятся за 10 секунд. Читайте документацию (http://doc.qt.io/) (Signals & Slots (http://doc.qt.io/qt-5/signalsandslots.html)), изучайте примеры (http://doc.qt.io/qt-5/qtexamplesandtutorials.html). В общем, как говорится, RTFM :).
Ещё один вариант вопроса: "Как передать параметры, или каким способом, из одного окна ui в другое окно ui, при этом окна ui находятся в разных файлах". В одном окне делаете сигнал, который будет отправлять параметр, во втором окне делаете слот, который будет принимать параметр. В месте кода, в котором создаёте эти окна, связываете сигнал со слотом. БОльшая часть работы с сигналами/слотами происходит в коде, нежели в Qt Designer (ui-файлах соответственно). Название: Re: Передача параметров между окнами Отправлено: Igors от Апрель 05, 2018, 12:01 Руслан, спрашивать на форуме надо только ПОСЛЕ чтения документации Qt. Вы не первый и не последний кто пытается делать наоборот - ну и, как всегда, ничего доброго не выходит.
Откройте букварь, найдите класс Вашей кнопки (QPushButton) и сигналы что он испускает (насколько помню Вам нужен clicked). Почитайте (или хотя бы посмотрите) как связывать слот-сигнал. И.т.д. Поверьте - быстрее не будет. Работать пересказчиком букваря никто не хочет (и это правильно). Название: Re: Передача параметров между окнами Отправлено: Ruslan от Апрель 05, 2018, 12:11 читал...пробовал...выходят ошибки...поэтому и пишу вопросы...всё что гуглится не помогает...сигналы и слоты создавал и проблем нет всё работает, вся проблема когда добавляю параметры...происходят одни ошибки...документация вся на английском а переводчики гугла или яндекса не помогают а путают...я понимаю, что для Вас это всё забавно, но для меня нет ни корректных вопросов пока я не пойму, что они не корректные!!!
Вы не правы, задаю вопросы в последнюю очередь, прочитал всё по этим классам и началу работы с QT но ни где нет примеров передачи параметров, если поделитесь ссылкой которую вы считаете исчерпывающей при прочтении, буду благодарен. Последний тупой вопрос: Может быть такое, что программа установилась не корректно либо в настройках не проставлена какая-нибудь галка из-за которой не срабатывает?! Название: Re: Передача параметров между окнами Отправлено: ViTech от Апрель 05, 2018, 13:10 Последний тупой вопрос: Может быть такое, что программа установилась не корректно либо в настройках не проставлена какая-нибудь галка из-за которой не срабатывает?! Вряд ли, должно работать нормально.Вы не правы, задаю вопросы в последнюю очередь, прочитал всё по этим классам и началу работы с QT но ни где нет примеров передачи параметров, если поделитесь ссылкой которую вы считаете исчерпывающей при прочтении, буду благодарен. Во вложении проект, набросал на скорую руку, надеюсь принцип будет понятен. Название: Re: Передача параметров между окнами Отправлено: Ruslan от Апрель 05, 2018, 13:36 ViTech, СПАСИБО!!!
Название: Re: Передача параметров между окнами Отправлено: Ruslan от Апрель 06, 2018, 11:00 Во вложении проект, набросал на скорую руку, надеюсь принцип будет понятен. не получилось(((... наверное, всё таки что-то с программой, может версия старая...такие ошибки я уже видел... Название: Re: Передача параметров между окнами Отправлено: ViTech от Апрель 06, 2018, 11:22 Попробуйте старый тип соединения:
Код
И напишите, какая у вас установлена версия Qt, какой компилятор и какой версии используется. Название: Re: Передача параметров между окнами Отправлено: Ruslan от Апрель 06, 2018, 12:31 ViTech, очень благодарен, не знаю как ещё выразить - благодарность!!! заработало!!! значит у меня старая версия?! компилятор GCC
Название: Re: Передача параметров между окнами Отправлено: ViTech от Апрель 06, 2018, 12:44 Версия Qt хоть и не самая свежая, но новый тип соединения должна поддерживать. Но это ещё от возможностей компилятора зависит. Версию компилятора можно посмотреть в консоли с помощью команды "g++ --version".
|