Как изменить курсор между виджетами QSplitter?
Мне очень подошёл способ объединение виджетов, через QSplitter
, т.к. в нём я могу настроить расстояние между виджетами.
Я чуть позже объединяю QLayout
и QSplitter
. Так вот, пространство между виджетами (QPushButton
) имеет определённый курсор.
На скрине курсор не сохраняется, мне хотелось бы его изменить.
Позже добавлю для кнопок изображения.
Если есть замечания по коду, пожалуйста расскажите. Заранее благодарен за помощь.
import sys
from PySide6.QtWidgets import (QMainWindow, QApplication, QPushButton, QWidget, QMessageBox, QDialog,
QLineEdit, QVBoxLayout, QHBoxLayout, QSplitter, QListWidget, QListWidgetItem, QSizePolicy)
from PySide6.QtCore import (Qt)
class change_word(QMainWindow):
def __init__(self):
super().__init__()
self.setStyleSheet(u'background-color: rgb(56, 56 ,56)')
self.central_widget = QWidget(self)
self.setCentralWidget(self.central_widget)
self.VLayout_buttons = QSplitter()
self.VLayout_buttons.setOrientation(Qt.Vertical)
self.VLayout_buttons.setOpaqueResize(True)
self.VLayout_buttons.setHandleWidth(20)
self.VLayout_buttons.setChildrenCollapsible(True)
self.VLayout_word = QVBoxLayout()
self.HLayout_all = QHBoxLayout(self.central_widget)
self.sizePolicy_button = QSizePolicy(QSizePolicy.Maximum, QSizePolicy.Maximum)
self.button_change = QPushButton()
self.button_change.setMinimumSize(40, 40)
self.button_change.setSizePolicy(self.sizePolicy_button)
self.button_delete = QPushButton()
self.button_delete.setMinimumSize(40, 40)
self.button_delete.setSizePolicy(self.sizePolicy_button)
self.VLayout_buttons.addWidget(self.button_change)
self.VLayout_buttons.addWidget(self.button_delete)
self.Filter_line = QLineEdit(self.central_widget)
self.Filter_line.setStyleSheet(
'color: white;'
'background: rgb(80, 80, 80);'
'border: 2px solid rgb(90, 90, 90);'
'border-radius: 3px'
)
self.Filter_line.textChanged.connect(lambda: self.search_func(self.Filter_line.text()))
self.List_Word = QListWidget(self.central_widget)
self.List_Word.setStyleSheet(
'QListWidget {'
'background: rgb(80, 80, 80);'
'color: White;'
'font-size: 14px'
'}'
'QListWidget::item:hover {'
'background: rgba(255, 255, 255, 40)'
'}'
'QListWidget::item:selected {'
'background: rgba(255, 255, 255, 70)'
'}'
)
self.List_Word.itemDoubleClicked.connect(self.Double_clicked_item)
Words = ['Crash', 'Smash', 'Trouble', 'Error', 'Smile']
self.List_Word.addItems(Words)
self.VLayout_word.addWidget(self.Filter_line)
self.VLayout_word.addWidget(self.List_Word)
self.HLayout_all.addLayout(self.VLayout_word)
self.HLayout_all.addWidget(self.VLayout_buttons)
def search_func(self, sort_filter):
for index in range(self.List_Word.count()):
item = self.List_Word.item(index)
if sort_filter.lower() in item.text().lower():
item.setHidden(False)
else:
item.setHidden(True)
def Double_clicked_item(self, item: QListWidgetItem):
print(item.text())
if __name__ == '__main__':
app = QApplication(sys.argv)
main_win = change_word()
size = main_win.screen().availableSize()
main_win.resize(size.width()/4, size.height()/2)
main_win.show()
sys.exit(app.exec())