![]() |
1
6
据我所知,您当前的目标是通过win-api移动窗口。 你将不得不通过C++来这样做。方法是:
代码示例(C++部分):
代码样本(QML部分):
注: 我建议您在完成拖动后再尝试调用此函数(并像现在这样移动窗口,直到那时)。如果可以的话,您可以尝试一下如果在拖动过程中调用这个函数而不是更改窗口的x/y,会发生什么。 |
![]() |
2
1
我想出了一个相对简单的方法来解决这个问题。由于qt中的无框架窗口从创建它的窗口获取其比例因子,因此技巧是创建另一个窗口(具有标题栏,但用户看不到),并在其中创建无框架窗口,然后向无框架窗口添加代码,以使隐藏窗口位于当用户拖动它时将其删除。当无框窗口被拖到另一个屏幕中时,隐藏的窗口会随之移动,获取新的比例因子(因为它有一个标题栏),然后无框窗口也会立即获取新屏幕的比例因子。 以下是示例解决方案代码:
然后从主窗口qml使用这些类:
|
![]() |
DELI · 如何在QML中修改TableView数据? 2 年前 |
![]() |
joshp · Pysides6列从设置向后跨距 2 年前 |
![]() |
MingMing · C++在MaCOS 11上显示权限对话框 2 年前 |
![]() |
K.Mulier · PyQt5:如何将QObject移动到主线程? 6 年前 |