Чтобы переопределить метод, вы должны понимать, не конфликтует ли он с новой функциональностью. В этом случае метод keyPressEvent в QTableWidget не конфликтует с сокращением CTRL + C, поскольку по умолчанию они ничего не делают с этим ключом, поэтому во избежание потери предыдущей функциональности необходимо вызовите родительский метод super:
def keyPressEvent(self, event):
<b>super(SubQTableWidget, self).keyPressEvent(event)</b>
if event.matches(QtGui.QKeySequence.Copy)):
self.copy_selection()
Если вы хотите обработать CTRL + C простым способом, тогда вы можете использовать QShortcut, чтобы нет необходимости переопределять метод keyPressEvent:
class SubQTableWidget(QtWidgets.QTableWidget):
def __init__(self, parent=None):
super(SubQTableWidget, self).__init__(parent)
QtWidgets.QShortcut(
QtGui.QKeySequence(QtGui.QKeySequence.Copy),
self,
activated=self.copy_selection,
context=QtCore.Qt.WidgetShortcut
)