sorry ich bin gerade total am Anfang mit der GUI Programmierung . Ich nutze den Qt5 Designer, mit dem sich schöne GUIs bauen lassen. Ich kann damit auch schon in eine Richtung gut experimentieren, d.h. die erstellte *.ui Datei kann ich in meinem Source Code gut einbinden und die Daten, die ich aus den Input Widgets der GUI eingeben, auslesen und weiterverarbeiten. Jetzt mag es mir aber nicht gelingen, aus dem Quellcode neue Widgets zu erstellen (wofür ich ja den Designer nutze). Konkret gibt der Nutzer z.B. eine 3 ein und da soll ins frame_2 dann 3 neue Lineedit-Widgets erzeugt werden. Bei tkinter wäre das einfach zu realisieren. Wie geht das bei QT? PS: Ich bin auch in der OOP noch nicht sooo fortgeschritten So sieht meine entsprechende Implementierung aus:
Code: Alles auswählen
import sqlite3, os, sys
from PyQt5 import QtWidgets, QtCore, uic
class db_manager_GUI(QtWidgets.QDialog):
def __init__(self, parent=None):
super().__init__(parent)
self.ui = uic.loadUi("db_manager.ui", self)
# Slots einrichten
self.ui.b1_create_database.clicked.connect(self.create_database)
self.setWindowTitle("db manager python")
def create_database(self):
db_name = self.ui.database_name.text().format() +".db"
connection = sqlite3.connect(db_name)
cursor = connection.cursor()
name_of_columns = self.ui.name_of_columns.text().format()
#name_of_colums_list = name_of_columns.split(";")
db_table_name = self.ui.database_table.text().format()
sql_statement = "CREATE TABLE IF NOT EXISTS "+db_table_name + " (" + name_of_columns + ")"
cursor.execute(sql_statement)
app = QtWidgets.QApplication(sys.argv)
dialog = db_manager_GUI()
dialog.show()
sys.exit(app.exec_())
Besten Dank,
m.g.o.d