首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在GtkScrolledWindow中获得当前显示区域

如何在GtkScrolledWindow中获得当前显示区域
EN

Stack Overflow用户
提问于 2013-08-05 12:16:29
回答 1查看 387关注 0票数 2

我有一个gtkscrolledwindow窗口,其中有一个gtk映像。如何在GtkScrolledWindow中获得当前显示区域?例如,我的图像是1366x768 pix和300x400 pix,图像的一部分显示在滚动窗口中。我想得到显示部分的坐标(x,y,宽度,高度),我在这里看:1ScrolledWindow.html,但找不到任何解。谢谢。

编辑:来自user1146332的解决方案非常感谢。对于python代码:

x = self.scrolledwindow.get\_hadjustment() print str(x.get\_page\_size()) + " width of showing area" y =self.scrolledwindow.get\_vadjustment() print str(y.get\_page\_size()) + " height of showing area" print str(x.get\_upper()) + " image width in scrolledwindow" print str(y.get\_upper()) + " image height in scrolledwindow" print str(x.get\_value()) + " x position" print str(y.get\_value()) + " y position"

注意,对于在GtkScrollbar中使用的调整,允许值的有效范围从调整->下到调整->上调整->页面大小。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-05 22:03:51

我想你想要实现这样的目标:

xy描述位于图像部分左上角的点,而widthheight则与图像部分的大小有关。此外,我假设GtkImage对象被添加到GtkViewport小部件中,GtkViewport被添加到GtkScrolledWindow中。

不幸的是,我不能给你一个具体的回答,因为我对它一无所知。但是,如果您能够将gtk的参考手册中的信息传递给python,那么您应该能够实现它。

如果您想要有关图像部分的坐标的信息,首先必须获得vadjustmenthadjustment小部件的GtkScrolledWindow属性。这些属性是GtkAdjustment对象,包含所需的信息。这些对象的page-size属性与可见图像部分(即widthheight )的大小有关。而value属性vadjustmenthadjustment都定义了图像部分左上角的点,即xy

如果要对上述属性的更改做出异步响应,则应将两个调整对象的changedvalue-changed信号连接到一个和相同的信号处理程序。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18057928

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档