cuốn sách gpt4 ai đã làm

python - 从主 PyQt 窗口启动 PyQT 窗口,并获取用户输入?

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-03 13:23:09 32 4
mua khóa gpt4 Nike

Tôi có cửa sổ chính PyQt mà từ đó tôi cần lấy chuỗi dữ liệu đầu vào của người dùng khi người dùng nhấn một nút nhất định.

Đây là mã cửa sổ đầu vào của người dùng của tôi:

 lớp inputDialog(QtGui.QDialog):
'''
đây là lúc bạn cần lấy một số văn bản đầu vào của người dùng
'''
def __init__(self, parent=None, title='user input', label='comment', text=''):

QtGui.QWidget.__init__(bản thân, cha mẹ)

#--Nội dung về bố cục-------------#
mainLayout = QtGui.QVBoxLayout()

bố cục = QtGui.QHBoxLayout()
self.label = QtGui.QLabel()
self.label.setText(nhãn)
bố cục.addWidget(self.label)

self.text = QtGui.QLineEdit(văn bản)
bố cục.addWidget(self.text)

mainLayout.addLayout(bố cục)

#--Nút--------------------------------#
bố cục = QtGui.QHBoxLayout()
nút = QtGui.QPushButton("được") #string hoặc biểu tượng
self.connect(button, QtCore.SIGNAL("clicked()"), self.close)
bố cục.addWidget (nút)

mainLayout.addLayout(bố cục)
self.setLayout(mainLayout)

self.resize(400, 60)
self.setWindowTitle(tiêu đề)

Từ cửa sổ chính, tôi nói:

inputter = inputDialog(mainWindowUI, title="comments", label="comments", text="")
inputter.show()
bình luận = inputter.text.text()
in bình luận

Thao tác này sẽ in một chuỗi trống, ngay cả khi người dùng nhập nhận xét và nhấp vào "OK". Rõ ràng là do tập lệnh cửa sổ chính không chờ Hộp thoại đầu vào đóng cửa. Vì vậy, làm cách nào để tôi có thể đợi để có thể truy xuất thông tin đầu vào của người dùng?

câu trả lời hay nhất

sử dụng

inputter.exec_()

thay thế

inputter.show()

Người gửi:http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qdialog.html#exec

Phương thức này cũng là một khe Qt có chữ ký int exec() của C++.

Hiển thị hộp thoại dưới dạng hộp thoại phương thức, chặn cho đến khi người dùng đóng nó. Hàm trả về kết quả DialogCode.

Nếu hộp thoại ở chế độ ứng dụng, người dùng không thể tương tác với bất kỳ cửa sổ nào khác trong cùng một ứng dụng cho đến khi họ đóng hộp thoại. Nếu hộp thoại ở chế độ cửa sổ, chỉ tương tác với cửa sổ chính bị chặn khi hộp thoại được mở. Theo mặc định, hộp thoại. là phương thức ứng dụng.

Xem thêm open(), show(), result() và setWindowModality().

Bắt đầu cửa sổ PyQT từ cửa sổ PyQt chính và nhận thông tin đầu vào của người dùng? , chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/7046882/

32 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress