Форум программистов, компьютерный форум, киберфорум
Python: GUI, графика
Войти
Регистрация
Восстановить пароль
 
861 / 439 / 173
Регистрация: 23.07.2018
Сообщений: 1,523
1
PySide

Динамическая подгрузка виджетов и их параметров

25.02.2020, 14:47. Просмотров 168. Ответов 0

Описание:
Есть поля ввода значений(QLineEdit, QSpinBox, QDoubleSpinBox), у каждого поля есть свои свойства(QLineEdit.length, QSpinBox.minimum, QDoubleSpinBox.maximum и т. д.).

Задача:
Нужно менять характеристики в зависимости от выбранного файла.

Решение:
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
# -*- coding: utf-8 -*-
 
import sys
from PySide2 import QtWidgets, QtCore, QtGui
 
 
class Main(QtWidgets.QGroupBox):
 
    def __init__(self, parent: QtWidgets.QWidget = None):
        QtWidgets.QGroupBox.__init__(self, parent)
 
        self.editor_1_1 = QtWidgets.QDoubleSpinBox(self)
        self.editor_1_1.setObjectName("editor.1.1")
        self.editor_1_2 = QtWidgets.QLineEdit(self)
        self.editor_1_2.setObjectName("editor.1.2")
 
        layout_1 = QtWidgets.QHBoxLayout()
        layout_1.addWidget(self.editor_1_1)
        layout_1.addWidget(self.editor_1_2)
 
        layout = QtWidgets.QFormLayout(self)
        layout.addRow("EDITORS", layout_1)
 
        if not parent:
            self.show()
 
    def load(self, data: str):
        for line in data.split("\n"):
            if not line:
                continue
            name, prop, value = line.split(";")
            widget = self.findChild(QtWidgets.QWidget, name)
            if widget is not None:
                widget.setProperty(prop, value)
 
 
example_file = """
editor.1.1;minimum;10
editor.1.1;maximum;100
editor.1.1;value;15
editor.1.1;suffix; sec
 
editor.1.2;length;20
editor.1.2;text;hello python!
"""
 
 
if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
    main = Main()
    main.load(example_file)
    sys.exit(app.exec_())
Есть ли способ более оптимальный?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.02.2020, 14:47
Ответы с готовыми решениями:

Динамическая подгрузка
Доброго времени суток! Нашёл пример на наших просторах. Хороший, нравится. Загрузил на...

Динамическая подгрузка ресурсов
Стоит такой вопрос. Как сделать так что бы загружались только те ресурсы которые нужны на данный...

Динамическая подгрузка dll
Есть определенный интерфейс, есть классы, реализующие его и хранящиеся в отдельный dll(плагины)....

Динамическая подгрузка файлов.
При подключении скрипта, код которого будет ниже, должны подгрузиться два файлика: один с js кодом,...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.02.2020, 14:47

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Динамическая подгрузка контента
Доброго всем дня! Прошу помощи в следующем вопросе. Допустим есть некая база данных и компонент...

Динамическая подгрузка контента
Есть фреймовая страница, например такая: <frameset rows='*, 100'> <frameset cols='200,*'> ...

Динамическая подгрузка данных
Добрый день. Такой момент: при создании сущности необходимо в dropdownlist выбрать какое либо...

Динамическая подгрузка контента из шаблонов
Есть динамический список, данные генерируются в контроллере, как сделать, чтобы данные...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.