使用python+gtk3中的vpaned调整无边界窗口的大小

2024-06-06 01:28:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用paned(分隔符)对象来调整无边界窗口的大小,如果你知道终端应用程序guake用运动通知事件来做这个

代码如下:

self.resizer.connect('motion-notify-event', self.on_resizer_drag)

def on_resizer_drag(self, widget, event):
    """Method that handles the resize drag. It does not actuall
    moves the main window. It just set the new window size in
    gconf.
    """
    (x, y), mod = event.device.get_state(widget.window)
    if not 'GDK_BUTTON1_MASK' in mod.value_names:
        return

    max_height = self.window.get_screen().get_height()
    percent = y / (max_height / 100)

    if percent < 1:
        percent = 1

    self.client.set_int(KEY('/general/window_height'), int(percent))

Resizer是paned对象,但是这段代码使用pygtk(gtk2),我在gtk3中使用python gobjectevent.device.get_状态(窗口)方法已弃用或更改。这不适合我,有什么建议或解决方案来调整窗口大小无边界窗口与对象拖动?在


Tags: the对象代码selfeventgetonwidget
1条回答
网友
1楼 · 发布于 2024-06-06 01:28:18

我自己把Guake的代码实现到Gtk3。在

第一个连接运动通知事件,大小调整器是窗格对象。在

self.resizer.connect('motion-notify-event', self.on_resize)

下一个写入调整大小事件

^{pr2}$

现在你可以用排水沟来扩大你的窗户。在

相关问题 更多 >