from
PyQt5.QtWidgets
import
*
from
PyQt5
import
QtCore, QtGui
from
PyQt5.QtGui
import
*
from
PyQt5.QtCore
import
*
import
sys
class
CheckableComboBox(QComboBox):
def
__init__(
self
, parent
=
None
):
super
(CheckableComboBox,
self
).__init__(parent)
self
.view().pressed.connect(
self
.handleItemPressed)
self
.setModel(QStandardItemModel(
self
))
def
handleItemPressed(
self
, index):
item
=
self
.model().itemFromIndex(index)
if
item.checkState()
=
=
Qt.Checked:
item.setCheckState(Qt.Unchecked)
else
:
item.setCheckState(Qt.Checked)
class
Window(QMainWindow):
def
__init__(
self
):
super
().__init__()
self
.setWindowTitle(
"Python "
)
self
.setGeometry(
100
,
100
,
600
,
400
)
self
.UiComponents()
self
.show()
def
UiComponents(
self
):
self
.combo_box
=
CheckableComboBox(
self
)
self
.combo_box.setGeometry(
200
,
150
,
150
,
30
)
geek_list
=
[
"Sayian"
,
"Super Sayian"
,
"Super Sayian 2"
,
"Super Sayian B"
]
self
.combo_box.addItems(geek_list)
App
=
QApplication(sys.argv)
window
=
Window()
window.show()
sys.exit(App.
exec
())