728x90
반응형
# qt_example.py

if __name__ == '__main__':
    from PySide2.QtCore import QCoreApplication
    QCoreApplication.setLibraryPaths(['C:\\Users\\rogue\\OneDrive\\바탕 화면\\cpt\\python\\test\\venv\\Lib\\site-packages\\PySide2\\plugins'])
import PySide2
import PySide2.QtCore
# print(PySide2.__version__)
# print(PySide2.QtCore.__version__)

from PySide2.QtWidgets import QApplication, QWidget, QLabel
import sys

if __name__ == '__main__':
    app = QApplication(sys.argv)
    
    window = QWidget()  
    window.resize(289, 170)
    window.setWindowTitle("First Qt Program")
    
    label = QLabel("Hello World")
    label.move(110, 80) 
    
    window.show()
    app.exec_()
## qt_login.py

from PySide2.QtCore import QCoreApplication
QCoreApplication.setLibraryPaths(['C:\\Users\\rogue\\OneDrive\\바탕 화면\\cpt\\python\\test\\venv\\Lib\\site-packages\\PySide2\\plugins'])

import sys

from PySide2.QtWidgets import (QApplication, QWidget, QLabel, QLineEdit, QGridLayout,
                               QPushButton, QHBoxLayout, QVBoxLayout)

from PySide2.QtGui import QIcon
from PySide2.QtCore import Qt

# import Logon_rc

if __name__ == '__main__':
    
    app = QApplication(sys.argv)
    logon = QWidget()
    
    labelId = QLabel('Id : ')
    labelId.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
    labelPW = QLabel('&Password: ')
    
    lineEditId = QLineEdit()
    lineEditPW = QLineEdit()
    lineEditPW.setEchoMode(QLineEdit.Password)
    # lineEditPW.setEchoMode(QLineEdit.Normal)
    
    labelId.setBuddy(lineEditId)
    labelPW.setBuddy(lineEditPW)
    
    buttonOk = QPushButton("&OK")
    buttonOk.setIcon(QIcon(":/ok.png"))
    
    layout1 = QGridLayout()
    layout1.addWidget(labelId, 0, 0)
    layout1.addWidget(lineEditId, 0, 1)
    layout1.addWidget(labelPW, 1, 0)
    layout1.addWidget(lineEditPW, 1, 1)
    
    # | 0, 0 | 0, 1 |
    # | 1, 0 | 1, 1 |
    # | 2, 0 | 2, 1 |
    
    layout2 = QVBoxLayout()
    layout2.addStretch()
    layout2.addWidget(buttonOk)
    
    # | 0 | 1 | 2 |
    
    mainLayout = QVBoxLayout()
    mainLayout.addLayout(layout1)
    mainLayout.addLayout(layout2)
    
    # | 0 |
    # | 1 |
    # | 2 |
    
    logon.setLayout(mainLayout)
    logon.setWindowTitle('Log on')
    logon.setWindowIcon(QIcon(":/images/ok.png"))
    
    buttonOk.clicked.connect(app.quit)
    
    logon.show()
    app.exec_()
## qt_button.py

if __name__ == '__main__':
    from PySide2.QtCore import QCoreApplication
    QCoreApplication.setLibraryPaths(['C:\\Users\\rogue\\OneDrive\\바탕 화면\\cpt\\python\\test\\venv\\Lib\\site-packages\\PySide2\\plugins'])
import PySide2
import PySide2.QtCore
from PySide2.QtWidgets import (QApplication, QWidget, QCheckBox, QRadioButton, QGroupBox,
                               QPushButton, QHBoxLayout, QVBoxLayout)
import sys

class MyForm(QWidget):
    def __init__(self, parent = None):
        QWidget.__init__(self, parent)
    
        self.setWindowTitle("Button Demo")
    
        self.button = QPushButton("OK", self)
        self.button.clicked.connect(self.okButtonClicked)
    
        self.checkBox = QCheckBox('Case Sensitivity', self)
        self.checkBox.toggled.connect(self.onCaseSensitivity)
        
        box = QGroupBox("Sex", self)
        
        self.button1 = QRadioButton("Male", box)
        self.button2 = QRadioButton("Female", box)
        self.button1.setChecked(True)
        
        groupBoxLayout = QVBoxLayout(box)
        groupBoxLayout.addWidget(self.button1)
        groupBoxLayout.addWidget(self.button2)
        self.button1.toggled.connect(self.onMale)
        
        mainLayout = QVBoxLayout()
        mainLayout.addWidget(self.button)
        mainLayout.addWidget(self.checkBox)
        mainLayout.addWidget(box)
        
        self.setLayout(mainLayout)
    
        pass
    
    def okButtonClicked(self):
        print('okButtonClicked')
        
    def onCaseSensitivity(self, toggle):
        print('okCaseSensitity', toggle)
        print(self.checkBox.isChecked())

    def onMale(self,toggle):
        print('onMale',toggle)

if __name__ == '__main__':
    app = QApplication(sys.argv)
    form = MyForm()    
    form.show()
    app.exec_()
728x90
반응형

'Language > Python' 카테고리의 다른 글

lambda expression  (0) 2023.04.16
Move average  (0) 2022.11.25
Basic Qt  (0) 2022.10.26
[PySide] Hello World  (0) 2022.10.26
To change the Python version & Interpreter for VSCODE  (0) 2022.09.08

+ Recent posts