问题标签 [gtkmm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - GTK:如何设置 VBox 的高度?
嗨,我正在使用 GTKMM 制作应用程序。截图如下:
问题是,我无法将“我的标签”定位在顶部对齐,就在搜索框的下方。
我是把Name,Search box,Search Button打包进一个HBox,HBox打包进一个VBox,然后MyLabel打包进VBox。
我认为问题在于 VBox 为两行分配了相等的高度,所以即使我将 MYLabel 对齐到顶部,但它的顶部是屏幕的中间,因为 VBox 平均分配了两行之间的高度。
有没有办法设置 VBox 行的高度?或任何其他出路?
linux - Gtk::MessageDialog Run 抛出分段错误
您好我正在尝试使用对话框显示错误消息。但是,当我运行代码时,会出现分段错误。
这是功能:
我尝试打开一个文件,如果文件无法打开,我想显示这个错误框,但是我一直遇到分段错误。
linux - 目标机器上未安装 GTK+ libgio-2.0.so.0
我有一个使用 gtkmm 的应用程序。客户端的机器没有安装这个库。当他在他的 Red Hat Linux 上运行我的应用程序时,他收到错误:libgio-2.0.so.0: cannot open share d object file: No such file or directory
如何将它安装在客户端的机器上?我知道我可以进行 yum 安装,但由于它的 Red Hat 客户端需要有效订阅,但他们的订阅已过期,所以我无法使用 yum。
有没有办法在不使用 yum 的情况下安装 libgio-2.0.so?
gtk - 如何将 ScrolledWindow 支持添加到 GtkMM 中的自定义小部件?
我正在为 Gtkmm 编写一个自定义小部件,它应该显示一个巨大的数据集(想象一下像 4096x256 字符数据表之类的东西)。
主要是出于优雅的原因,但也可能在 Glade/Gtk-Builder 编辑器中使用,我希望这个小部件本身支持 ScrolledWindow,也就是说,一旦它被设置为 ScrolledWindow 的子级,它就会被识别为可滚动的小部件,允许在其上设置水平和垂直调整对象,随后可以对其进行篡改。
似乎这样做了,我需要在我的小部件的构造函数中做这样的事情:
稍后,添加小部件时ScrolledWindow发出的信号需要通过信号代理方法或其他什么被我的Widget捕获?我不知道。
我怎样才能做到这一点?
linux - RHEL3 上的 GTKMM?
如何在 Red Hat Enterprise Linux 3 上安装 GTKMM?
opengl - OpenGL/Gtkmm 游戏 - 键盘移动
我正在“OpenGL”中编写游戏并使用“Gtkmm”作为窗口管理器。我想使用键盘来移动相机(因此,“向上键”向前移动,“向下键”向后移动,等等......)
前段时间,当我用 Java 编程时,我使用这种技术来“移动”:
当应用程序接收到例如“UP- keypress ”信号时,它随后将标志“shouldMoveForward”设置为“true”,当它后来收到“UP-key- release ”信号,它把标志设置回“false”。
并且“游戏循环”不断检查该标志,如果是真的,它会向前移动相机,否则它什么也不做。
所以我想在“Gtkmm”中使用相同的技术。所以我只是覆盖了我的"Gtk::DrawingArea"的这些功能:
但问题在于:例如,当我按下“UP”键并按住 5 秒钟时,会发出以下信号序列:
当我在“在 Linux 上”运行我的游戏时,会出现之前的情况。
当我“在 Windows 上”时,它就像我想要的那样,因此:
所以这似乎是在 Gtkmm 中移动相机的“非便携式”解决方案。
那么是否有任何其他(“PORTABLE”)解决方案可以使用 Gtkmm 作为窗口管理器来实现相机移动?
pygtk - Gtkmm:如何捕获 Gtk::Table 的右键单击信号?
我正在使用 GTKMM 制作应用程序,我想知道如何从 Gtk::Table 捕获右键单击信号?
如果鼠标在 Gtk::Table 上方,如何捕捉?
mouse - Gtkmm - “Gdk::Window::pointer_grab”问题
我正在使用“Gtkmm”作为窗口管理器编写 FPS(第一人称射击)游戏,我想做“鼠标外观”。因此,我必须“抓住”鼠标指针以将所有鼠标运动事件重定向到我的应用程序窗口。
似乎有三个重载函数可以完成这项工作,我选择了最简单的一个作为开始:
我试图把这个功能放到我的应用程序中,但到目前为止我得到了“糟糕的结果”——它没有做我想要的,它在“Windows”上的行为“不同”,而不是在“Linux”上,等等。 .
所以我会写下我到目前为止所做的事情,但首先,我的目标是什么:“我想将我的应用程序放在一个窗口中,并且希望即使我离开窗口也能够用鼠标进行鼠标查看用鼠标指针”。
所以让我们来看看函数参数:
--> bool owner_events:当我将它设置为“true”时,我只有在窗口内时才会收到事件,但是(更糟糕的是)当我将它设置为“false”时,我没有t 获取任何事件 - 所以我将其设置为 true (更好的选项 :-) )
-->Gdk::EventMask event_mask:应该有我想要捕捉的那些事件。目前,我只对鼠标运动事件感兴趣,所以我只放了"Gdk::POINTER_MOTION_MASK"
-->guint32 时间戳:这个我也不明白,但是当我放纯 "0" 时,抓取状态是好的,因此“GRAB_SUCCESS”(当我尝试将其设置为 1、2 或任何其他数字时,它返回“GRAB_INVALID_TIME”作为抓取状态) - 所以我将其设置为“0”
现在,当我在 Linux 上运行它时,它虽然抓住了指针,当我点击窗口外的某个地方时,它没有反应(因此我的窗口始终保持在顶部,这就是“我想要的”),但是问题就是说,应用程序不会捕获任何事件,或者仅当我在窗口内时(当我将owner_events设置为true时)才捕获它。
而在 Windows 上,情况更糟:当我点击窗口外的某个地方时,它会将我切换到我点击的区域 - 所以这与“不抓取”相同。
有人可以告诉我,我做错了什么,或者给我一个在 Gtkmm 中使用抓取的小例子吗?
c++ - 检索 Gtk::Widget 的相对位置:get_allocation() 不起作用
我需要检索 aGtk::Widget
相对于其父级 a的位置Gtk::Table
。大多数来源(例如http://library.gnome.org/devel/gtk-faq/stable/x642.html)说需要调用Gtk::Widget::get_allocation()
. 但是,返回的Gtk::Allocation
对象总是包含x = -1
, y = -1
, width = 1
, height = 1
。
我必须注意,这发生在Gtk::Table
对象实际暴露和渲染之前。调用show_all_children()
or check_resize()
,我希望重新计算子小部件几何图形,但没有帮助。
我究竟做错了什么?提前致谢。
c++ - gtkmm 中的异形窗口
如何在 Gtkmm 中创建异形窗口。必须使用 cairomm 定义形状。