- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我的任务是在程序启动时恢复窗口 frame 在屏幕上的位置 - 以便定义初始窗口位置。
考虑以下在 Linux 上装饰的 GtkWindow 实例:
窗口有两个主要框:框架框和客户框。
还有两个 GTK 函数可以设置窗口在屏幕上的大小和位置:
gtk_window_move() - 设置窗口的 frame 框在屏幕上的位置和
gtk_window_resize - 设置窗口的客户端框大小。
问题:
在 GTK 中有什么方法可以定义窗口的初始 frame 位置吗?
在 Windows 上,我可以通过调用 MoveWindow()
和在 MacOS 上调用 NSWindow setFrame
方法来实现。但是在 GTK 上......我要求太多了吗?
最佳答案
连接到窗口的“实现”信号(重要:在调用 gtk_widget_show 之前)。然后从处理程序调用 gtk_window_move:
#include <gtk/gtk.h>
void on_window_realize(GtkWidget *widget,
gpointer user_data)
{
GtkWindow *window = GTK_WINDOW(user_data);
gtk_window_move(window, 100, 40);
}
int main(int argc, char **argv) {
GtkWidget *window = NULL;
gtk_init(&argc, &argv);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
g_signal_connect(window,
"realize",
G_CALLBACK(on_window_realize),
(gpointer)window);
g_signal_connect(window, "destroy", gtk_main_quit, NULL);
gtk_widget_show(window);
gtk_main();
return 0;
}
关于c - 在屏幕上设置装饰 GtkWindow 的框架位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58103333/
我正在尝试学习 C++,但我找不到是否可以用这种方式扩展一个类: 主.cc #include "mWindow.h" using namespace std; int main( int argc,
我正在使用此代码从网络检索和显示图像: class Display(object): def __init__(self): self.window = gtk.Window(
我正在使用 C 和 Glade 以及 GTK 3。我想创建一种简单的编程语言。我创建了基础知识:代码编辑器、输出窗口等。但是当用户关闭输出窗口并尝试重新打开时,此消息显示: (ltc:3443): G
我想在两个 TOPLEVEL GtkWindow 之间进行通信。 例如,我双击GtkTreeView中的行,新的GtkWindow用于修改该行的上下文。 但是,除了声明一个全局变量来传递结构体之外,我
我正在尝试一个简单的示例 Gtk 程序并使用 GtkTable 来对齐我的小部件。 我的布局应该是: 窗口背景为黑色。按钮应该是白色的,而按钮上的文字应该是黑色的。所有标签都应为白色,以便在黑色窗口背
我正在尝试制作一个 C 程序的测试版本,用户可以在其中使用 GTK 文件选择器加载游戏关卡。它似乎有效,并且确实打开了文件选择器窗口,但是当用户尝试选择文件时崩溃。问题似乎是 GtkWindow 没有
我有一个简单的 C GTK Linux 应用程序,它需要将主窗口的背景设置为来自 GIF 的图像文件。我做了一些阅读,看来我应该能够做到以下几点: 1- stuff the background im
我的任务是在程序启动时恢复窗口 frame 在屏幕上的位置 - 以便定义初始窗口位置。 考虑以下在 Linux 上装饰的 GtkWindow 实例: 窗口有两个主要框:框架框和客户框。 还有两个 GT
如何将 HTML 页面渲染到 gtkwindow 中?比如说,我已经有一个下载/编写的 HTML 页面。我想在我的 gtk 应用程序中呈现该页面的内容。我该如何实现? 最佳答案 我已经尝试了 GtkH
在我的 Gtk-Gdk-Cairo-Pango 应用程序的开头,我创建了窗口: GtkWidget *window = gtk_window_new(GTK_WINDOW_TOPLEVEL); 首
我有以下结构, typedef struct _MainWin { GtkWindow parent; GtkWidget* scroll;
我将 GtkBuilder 与 Glade XML 文件一起使用。我想在不使用 gtk_window_fullscreen 方法的情况下将窗口的大小更改为全屏(因为这需要在没有窗口管理器的情况下工作)
我找不到如何做到这一点 :( 有 gtk_window_set_resizable,但它完全禁用调整大小,我仍然希望我的窗口水平调整大小。有什么想法吗? 最佳答案 我相信你可以尝试使用 gtk_win
我想让背景透明,只有小部件可见。 这是我的代码: #include int main (int argc, char *argv[]) { gtk_init (&argc, &argv);
1、我查了很多关于在 Gtk 中在 GtkWindow 中绘制矩形的引用资料,但很多都是使用 GtkDrawingArea 。我想知道我可以在没有 GtkDrawingArea 的情况下直接在 Gtk
我想在 GtkEventBox 中设置 GtkWindow 的不透明度。 gtk_event_box_set_visible_window(GTK_EVENT_BOX(eventbox), TRUE)
我安装了 32 位 Linux 版本的 Eclipse for Java EE Developers在 Linux 服务器上,我在从 Linux 机器启动 eclipse 时遇到问题。我编辑了我的 e
我是一名优秀的程序员,十分优秀!