В моем приложении пользователь может выбрать comport из списка всех доступных comports. Это должно быть сделано в меню, заполненном виджетами QAction. Однако текущий код не показывает, какой порт был выбран, и для того, чтобы сделать приложение более интуитивно понятным, я хотел бы указать, какой порт был выбран, тем самым показывая пользователю, в каком состоянии находится программа. значка (например, галочки) в меню рядом с выбранным портом было бы очевидно, какой порт был выбран. Каков правильный способ сделать это?
Мой код:
# Populate the serial port menu with all the available ports.
for port in comports():
_port = QtWidgets.QAction(port[0], mainWindow)
_port.setCheckable(True) # WRONG!
self.menuChoose_port.addAction(_port)
_port.triggered.connect(self.comportSelect)
Этот код явно не делает то, что я хочу, потому что он ставит флажки рядом с каждым пунктом меню. Кроме того, он позволяет пользователю проверять более одного порта одновременно, что совсем не желательно.
QActionGroup
, чтобы сделать активным только одно из действий за раз? - person vahancho   schedule 12.05.2014