Tag: gtk

将图像放置在固定布局GTK2中

我有一个试图执行以下操作的应用程序: 创建一个GTK2顶级主窗口 在主窗口中添加固定框架,以便对窗口小部件进行绝对定位 创建一个GtkImages矩阵,用于显示动画GIFS和静态JPEGS 在启动时,从列表中随机选取的静态JPEGS将填充矩阵 当事件发生时,矩阵将填充动画GIFS 当动画结束时,可能会在矩阵中再次显示不同的JPEGS 仅当两个或多个随机选择的JPEGS放置在矩阵的一行中时,才会发生运行时错误。 以下是此类运行时错误的示例: (wrong:3909): Gtk-WARNING **: Can’t set a parent on widget which has a parent 如果该行的每个图像都是唯一的,则不会发生运行时错误。 代码片段和运行时输出如下: /* * Compile me with: * gcc -Wall -o wrong wrong.c $(pkg-config –cflags –libs gtk+-2.0 gmodule-2.0) */ /* header includes */ /**** prototypes ****/ /********************/ typedef struct { unsigned int pixel_width, […]

刷新容器中的子项 – GTK

我正在使用图形用户界面在c中开发某种金融计算器。 我正在使用gtk-lib,我遇到了一个无法解决的问题。 它关于如何动态更新(刷新)窗口及其子窗口 – 更具体地说 – 容器中有一个子项是文本标签。 我希望根据textinputfield中输入的内容更改此标签。 我习惯于java,其中一个可以轻松调用名为invalidate()的方法。 c中有类似的解决方案吗? 或者是删除这个chidlitem并添加一个新的解决方案? 提前致谢 #include static GtkWidget *txt; static GtkWidget *window; static GtkWidget *vbox, *assetPrice, *strikePrice; static GtkWidget *asset_label; static GtkWidget *frame; static void entry_Submit(GtkWidget *widget, GtkWidget *entry) { const gchar *text = gtk_entry_get_text(GTK_ENTRY (txt)); printf (“Result: %s\n”, text); } static void CreateTextBox(GtkWidget **entry, GtkWidget *vbox) { […]

编辑GtkTreeView的难度

我正在编写一个软件,我的用户应该能够将数据添加到类似于表格的编辑小部件,我设法通过使用GtkTreeView进行渲染。 我可以通过此调用设置其editable属性来呈现我的单元格 g_object_set(content_renderer, “editable”, TRUE, NULL); 但是,我的GtkTreeView不仅保留输入的值,因为它甚至没有显示我在渲染之前添加的数据。 我在Web上看到了一些示例,开发人员手动将用户输入数据设置为模型,但所有这些都是使用Python或C ++编写的,使用这些语言提供的绑定,因此不直接解决我的问题。 我写了这个(不是那么)小例子 ,成功地显示了问题。 如何在GtkTreeView中使用户输入数据持久存在? PS:我的问题在某种程度上与这个有关,但是这个解决方案并不适用于我。 编辑 :我跟着@PhillipWood提示并将我的GtkCellRendererText连接到edited信号,并手动将新数据设置到模型中。 但是,我在编辑之前输入的数据和我在编辑期间输入的数据都没有显示在网格中。 我在Fedora 19下,GTK + 3.8.8。

如何使用静态编译处理GTK中的FileChooser

我必须创建一个文件(.exe)程序。 在该程序中,用户可以从他的计算机中选择目录。 我按照http://www.tarnyko.net/en/?q=node/31的顺序创建程序,运行良好。 但是当我调用FileChoser(点击按钮)时,我收到了这个错误 GLib-GIO-ERROR No GSettings schemas are installed on the system Tarnyko对此问题的回应是在网页上发布的 – 这是静态编译的“bug”。 我该如何解决这个问题? 一方面我必须有一个文件。 另一方面,我真的不想自己创建“复杂的”FileChooser ……有没有选择来处理这个问题? 我的想法:1 – 调用操作系统的原生文件选择器(windows)2 – 自己创建文件选择器 – 如果它在gtk中不是“太难” 我不知道怎么做这两件事。 抱歉复制 – 可能成功的解决方案是答案forms“ebassi”这里GLib-GIO-ERROR **:没有GSettings架构安装在系统上 (尚未测试)

如何将项目添加到Pidgin菜单

我想在Pidgin菜单中添加任意项目。 让它成为好友→显示→群组 。 我希望它与自定义function关联的checkbutton(如好友→显示→空组 )。 我怎样才能做到这一点? 在Pidgin 2.10.9中 在Pidgin 3.0.0(开发分支)

如何在C中禁用GtkTextView的编辑?

我尝试了这个,它生成一个TextView窗口: http://zetcode.com/tutorials/gtktutorial/gtktextview/ 但我不希望它是可编辑的。 顺便说一句,当文本溢出时,如何显示滚动条?

错误:无法忽略void值,因为它应该是 – C / GTK +

我试图在GTK +中创建一个窗口,其中的标签如下所示: 只要用户单击“新建”按钮,就会出现一个新选项卡。 但是,当我编译我的程序时,我得到一个错误:void值不应该被忽略,因为它应该是 phongcao@phongcao:~$ g++ /home/phongcao/C++/GTK+/newtab.cc -o /home/phongcao/C++/GTK+/newtab `pkg-config gtk+-2.0 –cflags –libs` /home/phongcao/C++/GTK+/newtab.cc: In function ‘int main(int, char**)’: /home/phongcao/C++/GTK+/newtab.cc:51:3: error: void value not ignored as it ought to be 这是代码: #include void destroy(GtkWidget *window, gpointer data) { gtk_main_quit(); } void new_tab(GtkNotebook *notebook, GtkWidget *content, GtkWidget *hbox) { gtk_notebook_append_page(notebook, content, hbox); } int main(int argc, […]

如何在C中为gtk_text_view设置缓冲区限制?

我希望我的GtkTextView在长字符串的末尾只显示一定数量的字符。 这可能,我该怎么办?

gtk_window_set_resizable将窗口设置为最小值

我有这样的问题。 但它关注的是回答。 我的意思是那样的电话 gtk_window_set_default_size (GTK_WINDOW(window), width, height); gtk_window_set_resizable (GTK_WINDOW(window), FALSE); 把我的窗户设置为最小的一个。 你有什么想法吗? 谢谢。 尤里·

设置对话框不可resize或创建另一个gtk窗口

我有一个包含4个按钮的gtk_window。 其中一个按钮将打开一个文件选择对话框(另一个function) – 当选择文件时 – 将显示一个带有3 gtk_entry(此function)的对话框。 static void function_with_3_gtk_entry (gchar *message, gpointer mainwin){ GtkWidget *dialog, *label, *content_area, *entry1, *entry2, *entry3; /* Create the widgets */ dialog = gtk_dialog_new_with_buttons (“Nome File”, mainwin, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_STOCK_OK, GTK_RESPONSE_NONE, NULL); content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog)); entry1 = gtk_entry_new(); entry2 = gtk_entry_new(); entry3 = gtk_entry_new(); gtk_widget_set_size_request(dialog, 250, 200); /* Ensure […]