我正在创建一个GTK窗口,由于各种原因,我希望用户不能调整大小.但是在窗口上调用set_resizable方法会导致它以1像素乘1像素的大小显示.(在下面的代码中,如果可设置可调整大小的行被注释掉,窗口会显示预期的大小.调整resize和set-resizable的顺序没有区别.)还有什么需要做的吗?
这是代码......
#include <iostream>
#include "myarea.hpp"
#include <gtkmm/main.h>
#include <gtkmm/window.h>
int main(int argc, char** argv)
{
Gtk::Main kit(argc, argv);
Gtk::Window win;
win.set_title("DrawingArea");
win.resize (600, 600);
//win.set_resizable (false);
MyArea area;
win.add(area);
area.show();
Gtk::Main::run(win);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
pto*_*ato 10
用win.set_size_request(600, 600);
而不是resize
.我不是100%确定为什么你的方式不起作用,但我认为这set_resizable(false)
解除了resize
导致窗口恢复到其默认大小请求的影响,该请求尽可能小.
归档时间: |
|
查看次数: |
2490 次 |
最近记录: |