将图像拟合到窗口 - GTKmm
Posted
技术标签:
【中文标题】将图像拟合到窗口 - GTKmm【英文标题】:Fitting image to window - GTKmm 【发布时间】:2012-03-31 20:11:02 【问题描述】:我正在使用 gtkmm 用 C++ 编写一个简单的照片查看器,但我无法解决一些问题。我想适合显示到窗口的图像。为此,我已将signal_configure_event
连接到我的拟合函数。这很好用,但现在我还有两个问题:
在最大化/最小化窗口时未发送信号,并且图像大小未更新。我试图通过将我的调整大小函数连接到signal_window_state_event
来解决这个问题,但它不起作用,因为在调整窗口大小之前发送信号并运行我的函数没有意义,因为它变得旧 Gtk::图片小部件尺寸参数。
类似的故事是在启动我的应用程序时加载第一张图片 - 当我将 loadImage()
连接到主窗口的 signal_show
时,它会在启动之前在窗口最大化并且图像保持不变非常小。
如果有人能给我一些关于如何正确操作的想法,我将非常感激。 GTKmm 文档真的很差,我不知道该怎么做。
负责上述操作的代码在这里(其余代码在存储库中): https://github.com/jjkrol/ZPR/blob/master/src/gui.cpp
非常感谢您。
【问题讨论】:
您是否尝试连接到 size-allocate 信号或覆盖 on_size_allocate()? 谢谢,成功了!我遇到了这个信号的问题,忘记重试了。 对我来说,gtkmm
文档的详细程度已经足够了;我需要做的一切,我已经能够从参考手册和教程中提炼出来。也许过去不是那么好;我不知道。
【参考方案1】:
解决方案是将我的函数连接到signal_size_allocate
,现在不需要任何其他信号。谢谢ergosys!
【讨论】:
恭喜修复!如果有能力,请确保将您的答案标记为“已接受”,以便其他人可以从您的成功中学习。干杯~以上是关于将图像拟合到窗口 - GTKmm的主要内容,如果未能解决你的问题,请参考以下文章