Вместо полного удаления рамки, которая также не позволяет пользователю перемещать или изменять размер диалогового окна, вы можете просто удалить кнопку закрытия из строки заголовка, выполнив что-то вроде
self.resultBox.setWindowFlags(QtCore.Qt.Window | QtCore.Qt.WindowStaysOnTopHint|
QtCore.Qt.CustomizeWindowHint | QtCore.Qt.WindowTitleHint)
, чтобы поймать выход Клавиша для диалога вы можете установить фильтр событий, например,
def resultWindow(self):
self.resultBox = QtWidgets.QDialog(self)
self.resultBox.installEventFilter(self)
....
def eventFilter(self, object, event):
if (object == self.resultBox and
event.type() == QtCore.QEvent.KeyPress and
event.key() == Qt.Key_Escape):
return True
return super().eventFilter(object, event)
или вы можете создать подкласс QDialog
и переопределить keyPressEvent()