标签: gtk

Gtk 和 gstreamer 链接器错误

我正在尝试从谷歌代码编译简单的GST 播放器。我已经修复并安装了丢失的库,现在我收到链接器错误

\n\n
vickey@tb:~/work/gst-player-0.0.0$ make\ngcc -ggdb -Wall -W -Wformat-nonliteral -Wcast-align -Wpointer-arith -Wbad-function-cast -Wmissing-prototypes -Wstrict-prototypes -Wmissing-declarations -Winline -Wundef -Wnested-externs -Wcast-qual -Wshadow -Wwrite-strings -Wno-unused-parameter -Wfloat-equal -pedantic -ansi -std=c99 `pkg-config --cflags gtk+-2.0` `pkg-config --libs gtk+-2.0` `pkg-config --cflags gstreamer-0.10` `pkg-config --libs gstreamer-0.10` -lgstinterfaces-0.10 ui.c gst-backend.c -o gst-player\nIn file included from /usr/include/gtk-2.0/gtk/gtk.h:236:0,\n                 from ui.c:19:\n/usr/include/gtk-2.0/gtk/gtkitemfactory.h:47:1: warning: function declaration isn\xe2\x80\x99t a prototype [-Wstrict-prototypes]\nui.c: In function \xe2\x80\x98toggle_fullscreen\xe2\x80\x99:\nui.c:60:9: warning: passing argument 1 of \xe2\x80\x98gtk_window_unfullscreen\xe2\x80\x99 from incompatible pointer type [enabled by default]\n/usr/include/gtk-2.0/gtk/gtkwindow.h:340:10: note: expected \xe2\x80\x98struct GtkWindow *\xe2\x80\x99 but …
Run Code Online (Sandbox Code Playgroud)

c++ gtk gstreamer

1
推荐指数
1
解决办法
8029
查看次数

在gtk中添加一个垂直滚动条并捕获它的事件

我编写了一个小测试应用程序,它生成一个 GUI,如下所示: 在此处输入图片说明

我对 gtk 编程非常陌生。在这个小 GUI 中,有一个树视图,当我尝试扩展它时,它跨越了可视窗口大小。我只想向这个窗口添加一个滚动条(垂直),它显示treeview 并且我想在滚动条向上或向下移动(逐步)时捕获该滚动条的事件。任何人都可以帮助我如何将此功能添加到我当前的小 GUI 中。不幸的是,我没有在网上找到任何关于这个的好材料,这促使我提出这个问题。

我想这对于真正的 gtk 程序员来说应该是一件容易的事。

下面是相同的代码:

#include <gtk/gtk.h>

enum
{
  COLUMN = 0,
  NUM_COLS
} ;

void  on_changed(GtkWidget *widget, gpointer statusbar)
{
  GtkTreeIter iter;
  GtkTreeModel *model;
  char *value;


  if (gtk_tree_selection_get_selected(
      GTK_TREE_SELECTION(widget), &model, &iter)) {

    gtk_tree_model_get(model, &iter, COLUMN, &value,  -1);
    gtk_statusbar_push(GTK_STATUSBAR(statusbar), gtk_statusbar_get_context_id(GTK_STATUSBAR(statusbar), value), value);
    g_free(value);
  }
}


static GtkTreeModel *
create_and_fill_model (void)
{
  GtkTreeStore *treestore;
  GtkTreeIter toplevel, child;

  treestore = gtk_tree_store_new(NUM_COLS,
                  G_TYPE_STRING);

  gtk_tree_store_append(treestore, &toplevel, NULL);
  gtk_tree_store_set(treestore, &toplevel, COLUMN, "Scripting languages", -1);

  gtk_tree_store_append(treestore, &child, …
Run Code Online (Sandbox Code Playgroud)

c gtk gtk2

1
推荐指数
1
解决办法
3818
查看次数

Python:对 GTK 树视图进行排序

我不明白gtk.Treeview()列表模型是如何工作的:

据我所知,我必须将 lismodel 包装在 a 中,gtk.TreeModelSort()但是当我这样做时,我无法再访问 listmodel 方法了..

    lm = gtk.ListStore(object)
    listmodel = gtk.TreeModelSort(lm)
    for f in files:
        listmodel.append([f])
    return listmodel
Run Code Online (Sandbox Code Playgroud)

AttributeError: 'gtk.TreeModelSort' 对象没有属性 'append'

我正在使用这个示例源代码):如何使表格在每一列上都可排序?

python gtk pygtk

1
推荐指数
1
解决办法
1137
查看次数

如何使用 GTK+ 作为 GUI 将图像文件作为图标编译为 EXE?

我知道如何将图像设置为 GtkWindow 的图标。

GtkWindow * window;
gtk_window_set_icon_from_file(window, "icon.png", NULL);
Run Code Online (Sandbox Code Playgroud)

并将 icon.png 与 exe 放在一起。

但是,如果我不想将该图像文件保留在我的文件夹中怎么办?我希望它以某种方式捆绑在 exe 文件中。

我知道这可以用 Qt 中的 qrc 来完成。我也可以在 GTK+ 中执行此操作吗?

gtk

1
推荐指数
1
解决办法
3196
查看次数

如何存储 gtk 应用程序的用户配置

我想用 GTK+ 编写一个简单的文本编辑器,我想存储用户配置,如 font-size font-type 等......我想写这样的功能:

char *fontName = "monospace bold 12";


char *getFont(something);



void setFont(char *fontName);
Run Code Online (Sandbox Code Playgroud)

c gtk config

1
推荐指数
1
解决办法
1474
查看次数

Python (GTK):有人能解释一下 TreeStore、Listmodel 和其他所有之间的区别吗?

我试图了解以下概念,但我阅读的所有文档都将所有文档捆绑在一起,而没有解释它们中的任何一个真正是什么,因此我不知道如何正确使用它们中的任何一个. 如果有人能给出某种现实世界的类比,那将大有帮助。

TreeView ListView(这甚至是一件事吗?) TreeStore ListStore TreeModel TreeIter

我的最终目标是从数据库中读取一组结果并将它们作为可点击的项目显示在小部件上。我已经完成了查找和检索部分,但将结果传回、显示它们并让它们更新被证明要棘手得多。

更新: 以下内容旨在从 postgreSQL 数据库中读取结果并将其放入“容器”中,从那里我可以将结果分配给输出对话框:

result = self.lookup_player(search) # this returns a result of cur.fetchall
    print result # just to make sure it returns the right things
    if len(result) > 0:  # make sure there are results
       for i in range(0, len(result)): # i used treeiter to see what it did
        treeiter=store.append([result[i][0],result[i][1],str(result[i][4])])
        print result[i][0],result[i][1],result[i][2],result[i][3],result[i][4],result[i][5],result[i][6],result[i][7],result[i][8],result[i][9],result[i][10]
    else:
       print "No players found"
Run Code Online (Sandbox Code Playgroud)

我在上面使用了 ListStore,因为它看起来最合适。但也许我应该使用 Treestore,或者一个简单的列表,或者一个数组……很容易看出字符串是什么,或者一个整数,一个浮点数,但是这些列表/树/模型/商店实际上是什么样子的或者做什么?

几年前我不得不放弃用 C 编码,因为我无法理解多态链表是什么,而这次我非常想避免与 python 相同的命运。

python gtk postgresql

1
推荐指数
1
解决办法
511
查看次数

Python Gtk - set_visible 在气质上起作用

我有一个窗口,它有两个下拉列表(国家和俱乐部),它们永远不应该同时可见。

当应用加载时,两者都不应该可见。第三个下拉列表(锦标赛类型),默认情况下不选择任何内容,决定应显示哪个俱乐部或国家/地区列表。单击屏幕顶部的按钮会填充下拉列表,选择适当的锦标赛类型和相关的俱乐部/或国家/地区。

实际发生的情况:加载时,两个下拉列表都可见。选择锦标赛类型后,两个列表都可见。当我单击顶部的按钮时,俱乐部列表可用,而国家列表则不可用。后者正是它应该的样子。

我使用相同的函数 (set_visible()) 在每种情况下显示或隐藏列表,所以我不知道为什么它在一种情况下有效,而在其他两种情况下无效。

下面的代码应该运行。#Add Tournaments Tab 之后的位创建了小部件,但未成功尝试隐藏组合框。函数 on_type_combo 更改未成功尝试隐藏组合框之一。函数 on_tournament_details 成功隐藏了相应的框。

#!/usr/bin/python
# coding=utf-8
from gi.repository import Gtk
import wikipedia


class NotebookWindow(Gtk.Window):

    def __init__(self):
        Gtk.Window.__init__(self, title="Rugby Database")

        #Initialise data
        self.country_store = Gtk.ListStore(int, str, str)
        self.club_store = Gtk.ListStore(int, str, str, int, int)
        self.tournament_store = Gtk.ListStore(int, str, int, str, int)
        self.cur_id = 0

        self.cur_club = ''
        self.cur_club_id = 0

        self.update_club_id = 0
        self.update_tournament_id = 0

        self.initialise_lists()

        #Create Application Window
        self.set_border_width(10)
        self.set_default_size(800, 600)
        self.set_position(Gtk.WindowPosition.CENTER)

        #Add external container (box)
        vbox = …
Run Code Online (Sandbox Code Playgroud)

python gtk

1
推荐指数
1
解决办法
1279
查看次数

如何使用 C++ 在 gtkmm:gtk::Listbox 中添加文本框

我想在 C++ 中使用 Gtkmm 在列表框中添加这种类型的文本。

带有文本的列表框

你能建议我怎么做吗?

c++ gtk listbox gtkmm

1
推荐指数
1
解决办法
2479
查看次数

使用 GTK3 和 pycairo 的 Python3 动画

我正在尝试使用 GTK3 库和 pycairo 在 python3 中制作一些简单的动画。

我一直试图找到简单的单文件示例但无济于事,但我确信它是可行的。

我找到的最接近的是:https://cairographics.org/cookbook/animationrotation/,但这是在 python2 中,库/依赖项完全不同。

有没有人能指点我一个体面的来源,或对上述代码的修改?

谢谢!

gtk pygtk cairo pycairo python-3.x

1
推荐指数
1
解决办法
1327
查看次数

在使用 Glade 创建的 Python GTK3 程序中导入 CSS 文件

我尝试查找有关添加彩色按钮小部件的信息。我尝试添加suggested-action为类,但按钮仍然是灰色的。所以我想用我自己的样式信息编写我自己的 css 文件。我正在使用glade来创建glade文件并从我的main.py中构建gui。

我必须将 css 文件放在我的源代码树中的什么位置以及如何导入它?

css python gtk user-interface python-3.x

1
推荐指数
1
解决办法
888
查看次数

标签 统计

gtk ×10

python ×4

c ×2

c++ ×2

pygtk ×2

python-3.x ×2

cairo ×1

config ×1

css ×1

gstreamer ×1

gtk2 ×1

gtkmm ×1

listbox ×1

postgresql ×1

pycairo ×1

user-interface ×1