QinputDialogشرح ال

 QinputDialog

 

Ok, cancelبالإضافة إلي زرارين QLabel,QSpinBox, QTextBox,QComboBoxهو عبارة عن نافذة صغيرة بها 

 

Create object of QFileDialog: 

 

Return_Value,ok=QInputDialog().getreturn_type(self,’title’,’label_text’)

getreturn_type:getInt(),getText(),getItem(),getDouble()

 

 

getInt()

لإستقبال الأرقام الصحيحةQSpinBox تعمل

getDouble()

لإستقبال الأرقام العشريةQSpinBox تعمل

getText()

لإستقبال النصوصQLineEdit تعمل

getItem()

لإختيار القيم من خلالهQComboBoxتعملَ

 

Functions:

 

نستخدم الواجهة التالية:QLineEditلإستقبال نص من  

text, ok = QInputDialog().getText(self, "QInputDialog().getText()",
                                  "User name:", QLineEdit.Normal,
                                  QDir().home().dirName())
if ok and text:
    print(text)

 

 نستخدم الواجهة التالية:QComboBoxللإختيار قيمة من

items = ["Spring", "Summer", "Fall", "Winter"]
item, ok = QInputDialog().getItem(self, "QInputDialog().getItem()",
                                  "Season:", items, 0, False)
if ok:
    print(item)

 

 نستخدم الواجهة التالية: QSpinBoxللإستقبال رقم صحيح من

def getint(self):
    num, ok = QInputDialog.getInt(self, "integer input dualog", "enter a number",int default_value)
    if ok:
        self.le2.setText(str(num))

 

 نستخدم الواجهة التالية: QSpinBoxللإستقبال رقم عشري من

def getint(self):
    num, ok = QInputDialog.getInt(self, "integer input dualog", "enter a number")
    if ok:
        self.le2.setText(str(num))

Example:

from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtGui import *
import sys

class inputdialogdemo(QWidget):
    def __init__(self, parent=None):
        super(inputdialogdemo, self).__init__(parent)

        # adding first row to QFormLayout
        layout = QFormLayout()
        self.btn = QPushButton("Choose from list")
        self.btn.clicked.connect(self.getItem)
        self.le = QLineEdit()
        layout.addRow(self.btn, self.le)
        # adding second row to QFormLayout
        self.btn1 = QPushButton("get name")
        self.btn1.clicked.connect(self.gettext)
        self.le1 = QLineEdit()
        layout.addRow(self.btn1, self.le1)
        # adding third row to QFormLayout
        self.btn2 = QPushButton("Enter an integer")
        self.btn2.clicked.connect(self.getint)
        self.le2 = QLineEdit()
        layout.addRow(self.btn2, self.le2)
        # adding fourth row to QFormLayout
        self.btn3 = QPushButton("Enter an float")
        self.btn3.clicked.connect(self.getfloat)
        self.le3 = QLineEdit()
        layout.addRow(self.btn3, self.le3)

        self.setLayout(layout)
        self.setWindowTitle("Input Dialog demo")

    def getItem(self):
        items = ("C", "C++", "Java", "Python")
        item, ok = QInputDialog.getItem(self, "select input dialog",
                                        "list of languages", items, 0, False)
        if ok and item:
            self.le.setText(item)

    def gettext(self):
        text, ok = QInputDialog.getText(self, 'Text Input Dialog', 'Enter your name:')
        if ok:
            self.le1.setText(str(text))

    def getint(self):
        num, ok = QInputDialog.getInt(self, "integer input dualog", "enter a number", 500)
        if ok:
            self.le2.setText(str(num))

    def getfloat(self):
    num, ok = QInputDialog.getDouble(self, "float input dialog", "enter a float")
    if ok:
        self.le3.setText(str(num))


if __name__ == '__main__'
    app = QApplication(sys.argv)
    ex = inputdialogdemo()
    ex.show()
    sys.exit(app.exec_())

Comments

Popular posts from this blog

QFormLayoutشرح ال

QGridLayoutشرح ال