Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 如何使用GTK+;制作子窗口;?_C_Gtk - Fatal编程技术网

C 如何使用GTK+;制作子窗口;?

C 如何使用GTK+;制作子窗口;?,c,gtk,C,Gtk,我有一个主窗口。如何使固定位置的子窗口始终位于顶部主窗口上,主窗口随它移动、最小化和最大化?您可以尝试gtk\u窗口\u设置\u类型\u提示(窗口、GDK\u窗口\u类型\u提示对话框) 这将使子窗口保持在主窗口的顶部 (您也可以尝试使用gtk\u window\u set\u transient\u for)我不认为这是可能的,这听起来像是一个相当。。。奇怪的想法。窗口通常由用户选择的窗口管理器管理;应用程序不应尝试对窗口进行这种级别的详细控制。在windows上,我可以作为子窗口创建新窗口。

我有一个主窗口。如何使固定位置的子窗口始终位于顶部主窗口上,主窗口随它移动、最小化和最大化?

您可以尝试
gtk\u窗口\u设置\u类型\u提示(窗口、GDK\u窗口\u类型\u提示对话框)

这将使子窗口保持在主窗口的顶部


(您也可以尝试使用
gtk\u window\u set\u transient\u for

我不认为这是可能的,这听起来像是一个相当。。。奇怪的想法。窗口通常由用户选择的窗口管理器管理;应用程序不应尝试对窗口进行这种级别的详细控制。在windows上,我可以作为子窗口创建新窗口。一切都好。但在GTK+上,我不能采取同样的行为。你是说类似的行为吗?这在GTK+中不容易实现,不。您可以创建子窗口,但它们不会自动具有您所追求的行为,因为这取决于窗口管理器。是的,就像MDI一样。你能帮我正确处理事件吗?窗口移动事件,窗口大小调整事件?我想说的是这很难,甚至不可能。MDI不是GTK+及其假设很好支持的模式,实际上也不是大多数可能使用GTK+的非Windows平台(如Linux)支持的模式,例如。