Qt Designer에 "MainWindow"라는 메인 윈도우와 "buttonDelete"라는 버튼이 있다고 가정 해 보겠습니다. 당신이 신호를 처리하고 열립니다 MainWindow
클래스에 메소드를 추가 할 필요가
from PyQt4 import QtCore, QtGui
from mainwindow_ui import Ui_MainWindow
class MainWindow(QtGui.QMainWindow, Ui_MainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self)
self.setupUi(self)
self.buttonDelete.clicked.connect(self.handleButtonDelete)
다음 :
첫 번째 단계는 메인 윈도우 클래스를 설정하고 처리기에 버튼의 클릭 신호를 연결하는 것입니다 대화 상자 :
def handleButtonDelete(self):
answer = QtGui.QMessageBox.question(
self, 'Delete Item', 'Are you sure you want to delete this item?',
QtGui.QMessageBox.Yes | QtGui.QMessageBox.No |
QtGui.QMessageBox.Cancel,
QtGui.QMessageBox.No)
if answer == QtGui.QMessageBox.Yes:
# code to delete the item
print('Yes')
elif answer == QtGui.QMessageBox.No:
# code to carry on without deleting
print('No')
else:
# code to abort the whole operation
print('Cancel')
여기에는 내장 된 QMessageBox functions 중 하나를 사용하여 대화 상자를 만듭니다. 처음 세 인수는 부모, 제목 및 텍스트를 설정합니다. 다음 두 개의 인수는 표시된 단추 그룹과 기본 단추 (처음에 강조 표시된 단추)를 설정합니다. 다른 단추를 사용하려는 경우 사용 가능한 단추는 here입니다. 내가 당신의 스크립트를 작성할 때이 오류가
if __name__ == '__main__':
import sys
app = QtGui.QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())
: 대화 = QtGui.QMessageBox.information (자기
이 예를 완료하려면, 당신은 단지 응용 프로그램을 시작하고 창을 보여주기 위해 몇 가지 코드가 필요 .tableViewPatient, '삭제 하시겠습니까?', '이 항목을 삭제 하시겠습니까?', buttons = QtGui.QMessageBox.Ok | QtGui.QMessageBox.Cancel) TypeError : 인수가 오버로드 된 호출과 일치하지 않습니다. QMessageBox.information (QWidget, QString, QString, QMessageBox.StandardButtons buttons = QMessageBox.Ok, QMessageBox.StandardButton defaultButton = QMessageBox.NoButton) : 인수 1에 예상치 못한 문제가 있습니다. 타입 'PySide.QtGui.QTableView' 나는 그것이 자기로부터의 오류일지도 모른다라고 생각한다? (확실하지 않음) 아직도이 일을 도와 줄 수 있습니까? – user3369214