Форум программистов, компьютерный форум, киберфорум
Python: GUI, графика
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
1 / 1 / 0
Регистрация: 18.09.2016
Сообщений: 18

Взаимоисключающие кнопки в pyqt и таймер

19.11.2016, 11:46. Показов 839. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. начал вот ковырять pyqt и столкнулся с булевой проблемой. вроде все элементарно, а как прописать не знаю. Вообщем вот кусок кода, я создал 2 кнопки и 2 таймера. Нужно сделать так, чтобы при нажатии на одну кнопку, вторая принимала значение false. что-то не получается реализовать, таймер со второй кнопки не хочет прекращать работу..

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
    def nowt(self):
        bat = QPushButton('Сегодня', self)
        bat.clicked.connect(self.timenow)
        bat.resize(bat.sizeHint())
        bat.move(5, 70)
 
 
    def tomt(self):
        bat = QPushButton('Завтра', self)
        bat.clicked.connect(self.timetom)
        bat.resize(bat.sizeHint())
        bat.move(100, 70)
 
 
    def timenow(self):
        timer1 = QTimer(self)
        timer1.timeout.connect(self.add)
        timer1.setInterval(3000)
        timer1.start()
 
 
    def timetom(self):
        timer2 = QTimer(self)
        timer2.timeout.connect(self.pr)
        timer2.setInterval(3000)
        timer2.start()
Добавлено через 14 часов 17 минут
Актуально. Что-то с таймеров траблы у меня. Переписал под радиобатн, путем костылей и ввода дополнительной переменной удавалось настроить остановку таймера, но все равно работала некорректно. Почему при повторном нажатии на кнопку, даже если она имеет значение тру, запускается таймер снова?

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
      def but(self):
        now = QRadioButton('Сегодня', self)
        now.clicked.connect(self.timer)
        now.resize(now.sizeHint())
        now.move(5, 70)
 
        tom = QRadioButton('Завтра', self)
        tom.clicked.connect(self.timer)
        tom.resize(tom.sizeHint())
        tom.move(100, 70)
 
    def timer(self):
        timer = QTimer(self)
        timer.setInterval(3000)
        timer.start()
 
        source = self.sender()
        if source.text() == "Сегодня":
            timer.timeout.connect(self.add)
        elif source.text() == "Завтра":
            timer.timeout.connect(self.pr)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
19.11.2016, 11:46
Ответы с готовыми решениями:

Таймер на PyQt
Здравствуйте! Я нашла в интернете нужную мне реализацию таймера на PyQt5. Однако, этот таймер «зацикленный», то есть после того, как...

Как получить символ с нажатой кнопки, PyQT
у меня в PyQt привязаны 3 кнопки, бтн,бтн2, бтн3 к одной функции и у каждой есть свой символ(* + -), мне нужно получить символ с нажатой...

Не могу вызвать функцию при нажатие кнопки PyQt
Хочу вызвать функцию add_key при нажатие кнопки но получаю ошибку class MainWindow(QMainWindow): def __init__(self): ...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.11.2016, 11:46
Помогаю со студенческими работами здесь

Как установить при нажатие кнопки combobox на другое значение? (PyQt)
У меня combobox содержит 2 значение ( test, test_2 ) при запуске он стоит на значение "test" Я хочу при нажатие кнопки значение combobox...

Взаимоисключающие ошибки.
Я в паскале новичок, только начинаю его осваивать (только дошел до массивов), поэтому укажите, пожалуйста, чайнику на его ошибку =). ...

Взаимоисключающие radiogroup
Задача сделать невозможным переключение одних радио групп в режим "numbers". Делаю так: public void onCheckedChanged(RadioGroup group,...

Взаимоисключающие поля
Добрый день. Есть поле № 1 (зеленое), в него вводим некоторые цифры (1,2,3...) через запятую. Есть поле №2 (красное), в него вводим цифры,...

Разница между PyQT 5 и PyQT 6
Добрый день, форумчане. Прошел тут курс всеми вами любимого автора, познакомился с GUI TKinter, и по вашим советам решил освоить PyQT. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru