
gtk
柳鲲鹏
建立了编程学(编程基本功、平台化编程)、六石管理学等几个流派。
每涉及一个领域,都是顶级砖家。在这些领域中,如果遇到问题,最后肯定是搜索到本博客。
展开
-
在LINUX系统监视器中,正确显示应用图标
泰山OFFICE在任务栏上图标显示正确,在系统监视器中就是系统默认的。这怎么办呢? 正好另外一个托盘小程序,在系统监视器中显示正确。这就好办了,抄一下。具体代码如下:这个东西搜索了好久,还是在自己代码中发现的,哈哈。原创 2022-11-17 16:54:16 · 256 阅读 · 1 评论 -
GTK源码下载链接
有时难免要看点源码。https://github.com/GNOME/gtkhttps://github.com/GNOME/gtk/tags原创 2022-01-26 14:05:57 · 1168 阅读 · 0 评论 -
gdk_screen_get_resolution简单研究
这个值能得到正确的dpi,那么这个值从哪里来的呢?gdkscreen.cgdk_screen_get_resolution:return screen->resolution; gdk_screen_set_resolution gdk_screen_set_property/PROP_RESOLUTION 有两处使用上述函数。猜测是:object_class->set_property = gdk_screen_set_property; 简单搜索了一下,没找到哪里调用。.原创 2022-01-26 10:07:46 · 602 阅读 · 0 评论 -
LINUX gdk/X11正确获取DPI/Resolution的函数
错误算法 试图想自己计算的肯定不对,结果一直是96。典型的如下:GTK: GdkDisplay* display = gdk_display_get_default(); GdkScreen* screen = gdk_screen_get_default(); int width = gdk_screen_get_width( screen); int widthmm = gdk_screen_get_width_mm(screen); printf("wi原创 2022-01-26 08:52:39 · 3774 阅读 · 13 评论 -
GDK获得各种scale factor
这些factor跟设置中的并无关系,感觉象是放大镜的作用。源码 #include <gtk/gtk.h>#include <gdk/gdk.h>#define FIRST_LABEL "first label" int main(int argc, char *argv[]) { gtk_init(NULL, NULL); GtkWidget *window = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk原创 2022-01-24 15:49:18 · 791 阅读 · 0 评论 -
undefined reference to `gdk_monitor_get_scale_factor/gtk_widget_get_scale_factor‘
安装gtk3.0sudo apt install -y libgtk-3-dev编译链接`pkg-config --cflags --libs gtk+-3.0 gtk+-x11-3.0 gdk-3.0 gdk-x11-3.0`gdk_screen_get_scale_factor似乎已经淘汰掉了。原创 2022-01-24 14:48:08 · 335 阅读 · 0 评论 -
Gtk-ERROR **: 14:39:47.000: GTK+ 2.x symbols detected. Using GTK+ 2.x and GTK+ 3 in the same process
具体错误Gtk-ERROR **: 14:39:47.000: GTK+ 2.x symbols detected. Using GTK+ 2.x and GTK+ 3 in the same process is not supported意思很明白,就是编译时,不能同时链接GTK 2.x与GTK3。这个时候直接链接GTK3即可。如果不知道哪个是2,可以逐个删除测试。吾是去掉了以下链接通过:" -lgobject-2.0 -lgtk-x11-2.0"...原创 2022-01-24 14:44:10 · 1567 阅读 · 2 评论 -
gtk窗口和标签控件范例代码
其实已有此类博文。标题不够清楚,编译脚本也没找到。安装依赖库sudo apt install -y libgtk2.0-dev源码#include <gtk/gtk.h> #define FIRST_LABEL "first label"int main(int argc, char *argv[]) { gtk_init(NULL, NULL); GtkWidget *window = gtk_window_new(GTK_WINDOW_TOPLEVEL原创 2022-01-21 10:54:35 · 660 阅读 · 0 评论