我在启动使用Pango库的任何内容时遇到此错误.我正在使用Kubuntu 9.10.我已经在libgtk*libcairo*libpango*和fontconfig上完成了'sudo apt-get --reinstall install',没有运气.
有人能指出我正确的方向吗?谢谢.
在您看来,在Windows中创建gui的最佳方法是什么?用gtk或win32 api?
你推荐GTK for windows吗?对吗?不是吗?为什么?
我想编译最简单的GTK程序.我可以使用命令行编译它:
gcc $(pkg-config --cflags --libs gtk+-3.0) main.c -o main.o
Run Code Online (Sandbox Code Playgroud)
但是,如果我使用Make它不起作用:
CFLAGS=-g -Wall -Wextra $(pkg-config --cflags)
LDFLAGS=$(pkg-config --libs gtk+-3.0)
CC=gcc
SOURCES=$(wildcard *.c)
EXECUTABLES=$(patsubst %.c,%,$(SOURCES))
all: $(EXECUTABLES)
Run Code Online (Sandbox Code Playgroud)
它告诉我这个:
gcc -g -Wall -Wextra -c -o main.o main.c
main.c:1:21: fatal error: gtk/gtk.h: No such file or directory
#include <gtk/gtk.h>
^
compilation terminated.
<builtin>: recipe for target 'main.o' failed
make: *** [main.o] Error 1
Run Code Online (Sandbox Code Playgroud)
我在哪里将Make(pkg-config --cflags --libs gtk + -3.0)粘贴在Makefile中以使其编译?
非常感谢你的帮助.
该贝姆保守的垃圾收集器的(如相当有用中的bigloo时,用它狡诈使用类似的东西,等...),尤其是在Linux操作系统(这是我关心的只是OS;我使用Debian/SID/86 -64如果重要,并且libgc-dev
包是版本,1:7.4.2-8
那么Boehm GC是7.4.2).
但是,Boehm的GC需要知道使用它的每个线程.它的gc_pthreads_redirects.h(或多或少内部)头文件正在重新定义pthread_create
为
# define pthread_create GC_pthread_create
Run Code Online (Sandbox Code Playgroud)
实际上,Boehm的GC需要的是GC_register_my_thread在新的线程调用堆栈中提前调用(并且GC_pthread_create
正在这样做).
在过去,Glib(2.46)提供了一种重新定义内存分配的方法,使用struct GMemVTable
该方法已 被弃用且不能再使用(我的Debian libglib2.02.0-dev
软件包是版本2.50.3-2
).有一个g_mem_gc_friendly
全局布尔值,但在查看Glib源代码时,它只是在释放它们之前清除内存区域.
最近的GTK3(我的libgtk-3-dev
软件包有版本3.22.11-1
)正在使用(间接)pthread_create
通过Glib线程函数创建线程(可能与Dbus相关,也可能与GtkTextView相关...).除了通过修补源代码之外,没有办法通知该线程创建.我害怕比我g_signal_connect
可以从这些线程调用的任何GTK回调(例如使用).或者,如果我使用某些可能使用(或访问)某些GC_malloc
-ed缓冲区的方法对GTK小部件进行子类化,则可能会发生灾难.
另一方面,GTK中有一个强大的编码规则,所有GTK操作都应该只在主线程中发生.引用Gdk3线程页面:
GTK +,但是,是不是线程安全的.您应该只使用GTK +和GDK从线程
gtk_init()
和gtk_main()
被称为上.这通常被称为"主线程".
如果我自己遵循这个规则,我确信没有内部GTK代码可以从一些非主线程调用我的回调(使用Boehm GC)?
我的直觉是,如果GC_alloc …
很多人似乎对哪个更好有意见.我并不是真的要求这些意见,我想知道的是细节:使一个图形工具包与另一个图形工具包不同的是什么,以及Qt和Gtk +有哪些差异?
许多程序员以这种方式导入gtk和pygtk:
import gtk
import pygtk
Run Code Online (Sandbox Code Playgroud)
我只使用gtk创建了一个简单的程序,它可以工作:
import gtk
window = gtk.Window()
window.set_size_request(800, 700)
window.set_position(gtk.WIN_POS_CENTER)
window.connect("destroy", gtk.main_quit)
button = gtk.Button("Vai")
button.set_size_request(30, 35)
button.connect("clicked", naviga)
testo = gtk.Entry()
h = gtk.HBox()
h.pack_start(testo)
h.pack_start(button)
window.add(h)
window.show_all()
gtk.main()
Run Code Online (Sandbox Code Playgroud)
所以...问题是:GTK和PYGTK的区别是什么?
我在a里面有一个treeview-widget ScrolledWindow
,它在运行时填充.我希望ScrolledWindow
自动滚动到列表的末尾.我"解决"问题,通过调整vadjustment
的ScrolledWindow
,每次一个行插入到树视图.例如:
if new_line_in_row:
adj = self.scrolled_window.get_vadjustment()
adj.set_value( adj.upper - adj.page_size )
Run Code Online (Sandbox Code Playgroud)
如果我在交互式ipython会话中运行代码并自己设置值,一切都按预期工作.
如果我使用默认的python解释器运行代码,则自动滚动不会一直有效.我调试了代码,问题似乎是,调整值有某种"滞后",只在一段时间后才会改变.
我的问题是:如何可靠地滚动到最大位置ScrolledWindow
?是一个特殊的信号生成,我可以使用?还是有更好的方法来设置adjustment-value
?
我正在使用像这样的Webkit浏览器检查器.
当我在Ubuntu 12.10中运行它时,我在使用检查器时遇到错误.例如:
** Message: console message: file:///usr/share/webkitgtk-1.0/webinspector/UIString.js @42: Localized string "Go to line" not found.
** Message: console message: file:///usr/share/webkitgtk-1.0/webinspector/UIString.js @42: Localized string "Filter" not found.
** Message: console message: file:///usr/share/webkitgtk-1.0/webinspector/UIString.js @42: Localized string "Search Previous" not found.
** Message: console message: file:///usr/share/webkitgtk-1.0/webinspector/UIString.js @42: Localized string "Search Next" not found.
** Message: console message: file:///usr/share/webkitgtk-1.0/webinspector/UIString.js @42: Localized string "?:" not found.
** Message: console message: file:///usr/share/webkitgtk-1.0/webinspector/UIString.js @42: Localized string "%d of %d" not found.
(geany:2487): Gdk-CRITICAL **: …
Run Code Online (Sandbox Code Playgroud) 我刚刚在运行GNOME 3桌面的Ubuntu 16.04上安装了NetBeans 8.1.如果可能的话,我想继续使用IDE的GTK +外观,但UI上的字体,特别是选项卡中的字体太小而且重叠.
我尝试--fontsize 15
在/etc/netbeans.conf
文件中添加参数但没有帮助.
我该怎么做才能解决这个问题?我以前似乎没有在NetBeans 8.0.2上出现此问题.
VirtualBox中的Linux guest虚拟机上的Gvim 7.4存在严重的重绘问题:通常当我向上/向下滚动时,显示的文本被破坏(例如,空或带有一些"漏洞").我必须调整大小/重新调整以清理屏幕.我从来没有遇到过与Gvim或Virtualbox类似的问题,但它使得gvim几乎无法使用.
更多信息:
不知道如何解决这个问题?