Форум программистов, компьютерный форум, киберфорум
Python: GUI, графика
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 24.10.2015
Сообщений: 142
PyQt5

В comboBox вывести пустое значение

07.08.2022, 13:22. Показов 1906. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Форумчане, привет!

Работаю с формой. Ввожу в поля QLineEdit значения. В конце обработки нажимаю кнопку ОК (Button_4), при нажатии которой сохраняется файл json с данными. При этом я хочу так же очистить значения во всех полях, чтобы можно было выполнить следующий замер / расчет.
Поля QLineEdit очищаю записью пустышки ''.
Необходимо, так же очистить значение поля comboBox.
Попробовал очистить его с помощью self.comboBox.clear() - получилось, но при вводе новых данных в combobox полностью пропадают значения для выбора. Они появляются только при перезапуске программы.
В итоге, необходимо очистить значение в combobox установкой в нем первого из этих трех значений:
Code
1
options = ["", "Line1", "Line2"]
т.е. пустышки.
Подскажите, пожалуйста, как это сделать?
Благодарю.

Мой код:
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
from PyQt5 import uic, QtWidgets, QtGui
from decimal import Decimal
 
# тестовая форма. Записывает json при нажатии на кнопку "ОК" без сигнала от кнопок. Без переменных.
Form, _ = uic.loadUiType("Test.ui")
 
global dict_
 
class Ui(QtWidgets.QDialog, Form):
    def __init__(self):
        super(Ui, self).__init__()
        self.setupUi(self)
        self.comboBox.setObjectName("comboBox") # выводим комбобокс
        options = ["", "Line1", "Line2"]   # в одну строку
        for option in options:
            self.comboBox.addItem(option)
        self.lineEdit.text()                    # Без переменных
        self.lineEdit_2.text()
        self.lineEdit_3.editingFinished.connect(self.math)
        self.lineEdit_4.text()
        #self.textEdit.toPlainText()
        v1 = self.pushButton.clicked.connect(self.printButtonPressed)
        v2 = self.pushButton_2.clicked.connect(self.printButton_2Pressed)
        v3 = self.pushButton_3.clicked.connect(self.printButton_3Pressed)
        self.pushButton_4.clicked.connect(self.printButton_4Pressed)
 
    def math(self):
        a1 = int(self.lineEdit_2.text())
        a2 = int(self.lineEdit_3.text())
        a3 = a1/a2
        number = Decimal(a3)
        number = number.quantize(Decimal("1.00"))  # Количество нулей определяет к-во разрядов
        a3 = str(number)
        self.lineEdit_4.setText(a3)
 
    def printButtonPressed(self):  # обработка нажатия на кнопку 1
        v1 = 1
        print('1:1')
 
    def printButton_2Pressed(self):  # обработка нажатия на кнопку 2
        v2 = 10
        print('1:10')
 
    def printButton_3Pressed(self):  # обработка нажатия на кнопку 3
        v3 = 100
        print('1:100')
 
    def printButton_4Pressed(self):
        # with open('data.json', 'wb') as f:
        #     json.dump(dict_, codecs.getwriter('utf-8')(f), ensure_ascii=False)
        dict_ = {'con': self.comboBox.currentText(),
                 'za': self.lineEdit.text(),        # Без переменных
                 'vo': self.lineEdit_2.text(),
                 'om': self.lineEdit_3.text(),
                 'am': self.lineEdit_4.text(),
                 }
        # print('Вольаж', self.lineEdit_2.text())
        # print('Сопрот.', self.lineEdit_3.text())
        # print('Дополн.', self.textEdit.toPlainText())
        print(dict_)
        self.lineEdit.setText('')
        self.lineEdit_2.setText('')
        self.lineEdit_3.setText('')
        self.lineEdit_4.setText('')
        self.comboBox.clear()
 
if  __name__== "__main__":
    import sys
 
    app = QtWidgets.QApplication(sys.argv)
    w = Ui()
    w.show()
    sys.exit(app.exec_())
Добавлено через 1 час 50 минут
На всякий случай, для тестирования код Test.ui:
Кликните здесь для просмотра всего текста

<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Dialog</class>
<widget class="QDialog" name="Dialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>591</width>
<height>231</height>
</rect>
</property>
<property name="windowTitle">
<string>Dialog</string>
</property>
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p align=&quot;center&quot;&gt;&lt;br/&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgb(212, 212, 212);</string>
</property>
<widget class="QTextEdit" name="textEdit">
<property name="geometry">
<rect>
<x>10</x>
<y>140</y>
<width>571</width>
<height>51</height>
</rect>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgb(255, 255, 255);</string>
</property>
<property name="html">
<string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html4... &quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
<widget class="QLabel" name="label_5">
<property name="geometry">
<rect>
<x>10</x>
<y>60</y>
<width>71</width>
<height>31</height>
</rect>
</property>
<property name="text">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-size:12pt;&quot;&gt;Делитель&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
<widget class="QPushButton" name="pushButton">
<property name="geometry">
<rect>
<x>90</x>
<y>60</y>
<width>75</width>
<height>23</height>
</rect>
</property>
<property name="toolTip">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p align=&quot;center&quot;&gt;&lt;span style=&quot; font-size:12pt;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="styleSheet">
<string notr="true">font: 12pt &quot;MS Shell Dlg 2&quot;;
background-color: rgb(172, 172, 172);</string>
</property>
<property name="text">
<string>1:1</string>
</property>
</widget>
<widget class="QPushButton" name="pushButton_2">
<property name="geometry">
<rect>
<x>170</x>
<y>60</y>
<width>75</width>
<height>23</height>
</rect>
</property>
<property name="styleSheet">
<string notr="true">font: 12pt &quot;MS Shell Dlg 2&quot;;
background-color: rgb(172, 172, 172);</string>
</property>
<property name="text">
<string>1:10</string>
</property>
</widget>
<widget class="QPushButton" name="pushButton_3">
<property name="geometry">
<rect>
<x>250</x>
<y>60</y>
<width>75</width>
<height>23</height>
</rect>
</property>
<property name="styleSheet">
<string notr="true">font: 12pt &quot;MS Shell Dlg 2&quot;;
background-color: rgb(172, 172, 172);</string>
</property>
<property name="text">
<string>1:100</string>
</property>
</widget>
<widget class="QLabel" name="label_6">
<property name="geometry">
<rect>
<x>10</x>
<y>100</y>
<width>161</width>
<height>31</height>
</rect>
</property>
<property name="styleSheet">
<string notr="true">font: 10pt &quot;Calibri&quot;;</string>
</property>
<property name="text">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p align=&quot;center&quot;&gt;&lt;span style=&quot; font-size:16pt;&quot;&gt;Дополнительно:&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
<widget class="QPushButton" name="pushButton_4">
<property name="geometry">
<rect>
<x>500</x>
<y>200</y>
<width>75</width>
<height>23</height>
</rect>
</property>
<property name="styleSheet">
<string notr="true">font: 12pt &quot;MS Shell Dlg 2&quot;;
background-color: rgb(236, 236, 236);</string>
</property>
<property name="text">
<string>OK</string>
</property>
</widget>
<widget class="QLabel" name="label_4">
<property name="geometry">
<rect>
<x>420</x>
<y>30</y>
<width>31</width>
<height>21</height>
</rect>
</property>
<property name="text">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-size:12pt;&quot;&gt;I, A&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
<widget class="QLabel" name="label_7">
<property name="geometry">
<rect>
<x>460</x>
<y>0</y>
<width>131</width>
<height>20</height>
</rect>
</property>
<property name="text">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-size:9pt;&quot;&gt;9/07/2022 13:30:28&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit">
<property name="geometry">
<rect>
<x>170</x>
<y>30</y>
<width>51</width>
<height>20</height>
</rect>
</property>
<property name="styleSheet">
<string notr="true">font: 12pt &quot;Calibri&quot;;
background-color: rgb(255, 255, 255);</string>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_2">
<property name="geometry">
<rect>
<x>270</x>
<y>30</y>
<width>41</width>
<height>20</height>
</rect>
</property>
<property name="styleSheet">
<string notr="true">font: 12pt &quot;Calibri&quot;;
background-color: rgb(255, 255, 255);</string>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_3">
<property name="geometry">
<rect>
<x>370</x>
<y>30</y>
<width>41</width>
<height>20</height>
</rect>
</property>
<property name="styleSheet">
<string notr="true">font: 12pt &quot;Calibri&quot;;
background-color: rgb(255, 255, 255);</string>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_4">
<property name="geometry">
<rect>
<x>460</x>
<y>30</y>
<width>41</width>
<height>20</height>
</rect>
</property>
<property name="styleSheet">
<string notr="true">font: 12pt &quot;Calibri&quot;;
background-color: rgb(255, 255, 255);</string>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QComboBox" name="comboBox">
<property name="geometry">
<rect>
<x>20</x>
<y>30</y>
<width>69</width>
<height>22</height>
</rect>
</property>
<property name="styleSheet">
<string notr="true">font: 12pt &quot;Calibri&quot;;
background-color: rgb(255, 255, 255);</string>
</property>
</widget>
<widget class="QLabel" name="label_2">
<property name="geometry">
<rect>
<x>230</x>
<y>30</y>
<width>41</width>
<height>21</height>
</rect>
</property>
<property name="text">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-size:12pt;&quot;&gt;U, В&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
<widget class="QLabel" name="label_3">
<property name="geometry">
<rect>
<x>320</x>
<y>30</y>
<width>41</width>
<height>21</height>
</rect>
</property>
<property name="text">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-size:12pt;&quot;&gt;R, Ом&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
<widget class="QLabel" name="label">
<property name="geometry">
<rect>
<x>110</x>
<y>30</y>
<width>51</width>
<height>21</height>
</rect>
</property>
<property name="styleSheet">
<string notr="true">font: 10pt &quot;Calibri&quot;;</string>
</property>
<property name="text">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-size:12pt;&quot;&gt;Замер&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</widget>
<resources/>
<connections/>
</ui>

0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.08.2022, 13:22
Ответы с готовыми решениями:

Начальное пустое значение в ComboBox
Гайз, при переходе в форму ComboBox уже заполнен данными, как сделать так чтобы поле ComboBox было изначально пустым

Как сделать пустое значение в combobox?
как сделать на форме combobox связанное с БД чтоб нулевое значение было пустым а потом список ???

Как занести пустое значение из combobox
Имеется форма с комбобоксами Каждый комбобокс заполняется из разных таблиц Пример заполнения: ComboBox1.Items.Clear; ...

2
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
07.08.2022, 13:39
Лучший ответ Сообщение было отмечено MaxGal как решение

Решение

MaxGal, надо чтоб выбор комбобокса опять на первую строчку встал чтоли? Или то, что было выбрано удалялось из списка?

Добавлено через 1 минуту
Python
1
self.comboBox.setCurrentIndex(0)
1
0 / 0 / 0
Регистрация: 24.10.2015
Сообщений: 142
07.08.2022, 13:55  [ТС]
iSmokeJC, на первую строчку.
Благодарю. Это именно то, что нужно.

Добавлено через 1 минуту
Я пробовал ставить не Index, а Item...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.08.2022, 13:55
Помогаю со студенческими работами здесь

Вывести последнее не пустое значение
Подскажите как написать запрос, нужно вывести последнее не пустое значение из поле NOTE, допустим если у нас в where period = '201807' а в...

Если данные в поле не существует вывести пустое значение
Приветствую, имеется запрос: SELECT `crm_map`.`id`, `crm_mapTimeCity`.`description`, `crm_mapTimeCity`.`time`, `crm_map`.`city`,...

Убрать пустое поле в comboBox
Всем привет! Как в comboBox убрать пустое поле что присутствует в списке? (то как выглядит на снимке)

Как вывести значение из бд в combobox?
Я выбираю название гостиницы из combobox. Бд должно увидеть, которую я выбрал гостиницу и вывести количество свободных комнат в label. ...

Вывести в comboBox значение из DataTable
это мой &quot;говнокод&quot; и он не пашет private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { ...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru