Код: Выделить всё
from PyQt6.QtWidgets import QApplication, QMainWindow, QVBoxLayout, QWidget
from PyQt6.QtWebEngineWidgets import QWebEngineView
import sys
html = """
Test
item1
item2
item3
item4
item5
item6
item7
item8
item9
item10
.scrollTableContainer {
height: 150px;
overflow-y: auto;
font-size: 12px;
scroll-behavior: smooth;
}
.scrollTable {
width: 100%;
}
.scrollTable th, .scrollTable td {
border: 1px solid black;
}
.scrollTable th {
background: gray;
position: sticky;
top: 0;
}
"""
sys.argv.append('--enable-smooth-scrolling')
app = QApplication(sys.argv)
window = QMainWindow()
window.setWindowTitle("test")
central_widget = QWidget()
layout = QVBoxLayout(central_widget)
window.setCentralWidget(central_widget)
view = QWebEngineView()
view.setHtml(html)
layout.addWidget(view)
window.show()
sys.exit(app.exec())
< /code>
Вот HTML из этого Python как фрагмент стека. По крайней мере, он плавно прокручивается в моем браузере..scrollTableContainer {
height: 150px;
overflow-y: auto;
font-size: 12px;
scroll-behavior: smooth;
}
.scrollTable {
width: 100%;
}
.scrollTable th, .scrollTable td {
border: 1px solid black;
}
.scrollTable th {
background: gray;
position: sticky;
top: 0;
}< /code>
Test
item1
item2
item3
item4
item5
item6
item7
item8
item9
item10
Как можно увидеть в коде Python, я попробовал это решение добавления-eNable-smooth-scrolling в sys.argv , которое передается в качестве аргумента в QApplication . Это также не сработало. Я искал документы для QAPPLICATION, но не нашел никаких ссылок на этот аргумент, несмотря на то, что его сказали как решение в другом месте. В документах казалось, что аргументы нуждались только в одном дефисе, но это также не сработало. (Это мой первый набег на QT.) Это заставляет меня задуматься, не сломается ли что -то между этим время от времени или это просто проблема с моей системой. Я переустановил pyqt6-webengine и pyqt6-webengine-qt6 .
Так может работать плавная прокрутка с HTML, предоставленную qtwebengine, так что он будет работать в моем приложении Neutron? Следует ли преследовать джанк -решение? Это мой первый вопрос, и я, вероятно, не хороший или опытный кодировщик! Я вставил это в код Python, чтобы включить настройку перед выполнением приложения: < /p>
Код: Выделить всё
settings = view.settings()
settings.setAttribute(settings.WebAttribute.ScrollAnimatorEnabled, True)
Подробнее здесь: https://stackoverflow.com/questions/796 ... twebengine
Мобильная версия