X11/XWINDOW
柳鲲鹏
建立了编程学(编程基本功、平台化编程)、六石管理学等几个流派。
每涉及一个领域,都是顶级砖家。在这些领域中,如果遇到问题,最后肯定是搜索到本博客。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
在LINUX系统监视器中,正确显示应用图标
泰山OFFICE在任务栏上图标显示正确,在系统监视器中就是系统默认的。这怎么办呢? 正好另外一个托盘小程序,在系统监视器中显示正确。这就好办了,抄一下。具体代码如下:这个东西搜索了好久,还是在自己代码中发现的,哈哈。原创 2022-11-17 16:54:16 · 2133 阅读 · 1 评论 -
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 · 466 阅读 · 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 · 1802 阅读 · 2 评论 -
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 · 959 阅读 · 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 · 3990 阅读 · 13 评论 -
GTK源码下载链接
有时难免要看点源码。https://github.com/GNOME/gtkhttps://github.com/GNOME/gtk/tags原创 2022-01-26 14:05:57 · 1331 阅读 · 0 评论 -
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 · 785 阅读 · 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 · 742 阅读 · 0 评论 -
想明白为什么:JDK的输入法候选框跟随光标,Windows早就支持了,LINUX却一直无法支持
比如链接提供的代码,我也是网上搜索下马看花范例,进行了全面改写。在网上反复搜索,幸运的找到了LINUX输入法的代码范例。然后我就使用了六石编程学的穷举法,终于找到了问题所在,在UBUNTU上成功移动了候选框。在UNBUTU试了之后有问题,我也想放弃。JDK开发人员写好了代码之后,在UBUNTU上一试,候选框不能移动,反复分析研究实在找不出问题,于是代码就没有提交。我在KYLIN/UOS上,这个参数能正确支持,候选框也能够移动。而在UBUNTU上,一旦使用这个这个参数,候选框就无法移动了。原创 2023-03-21 08:41:30 · 456 阅读 · 0 评论 -
Linux上X11测试输入法的代码范例
【代码】Linux上X11测试输入法的代码范围。原创 2023-03-18 07:43:17 · 844 阅读 · 1 评论 -
gtk_init参数传递过程(草稿)
gtk_init_checkgtk_parse_argsg_option_context_parsegdk_get_display_arg_name原创 2021-12-26 08:48:08 · 564 阅读 · 0 评论 -
全网首发:LINUX(UOS)对GTK/X11的窗口的差异
LINUX(UOS)对GTK/X11的窗口的差异原创 2021-12-22 09:14:23 · 810 阅读 · 0 评论 -
X11/XWindow更改属性代码
代码范例:static void window_change_property(){ char* cname = NULL; XTextProperty tp; Atom atom; int32_t status; //atom = XInternAtom(g_pDisplay, "WM_NAME", True); atom = XInternAtom(g_pDisplay, "_NET_WM_NAME", True); cname = (原创 2021-12-20 10:38:02 · 438 阅读 · 0 评论 -
X11获取windows名称和ID代码
源码#include <stdio.h>#include <stdlib.h>#include <string.h>#include <unistd.h>#include <X11/X.h> #include <X11/Xlib.h> #define WINDOW_X 100#define WINDOW_Y 100#define WINDOW_WIDTH 500#define WINDO原创 2021-12-20 09:10:34 · 1154 阅读 · 0 评论 -
x11获得窗口名的代码
具体代码:/**_NET_WM_NAME: 类似Window: 126WM_NAME: XStoreName设置的值*/bool get_window_name(Display* dpy, Window window, char* pName){ //尝试使用_NET_WM_NAME方式获取窗口的名称 XTextProperty tp; Status s1 = XGetTextProperty(dpy,window,&tp,XInternAtom(d原创 2021-12-17 14:54:15 · 1045 阅读 · 0 评论 -
X11/XWINDOW GUI窗口应用在任务栏上没有显示的解决办法
范例代码:x11/xwindow GUI窗口代码范例_柳鲲鹏-优快云博客 吾也奇怪,吾窗口已经显示成功了,结果在任务栏上没有。怎么办?简单,加一句:XStoreName(display, window, DISPLAY_TEXT); 好神奇!是不是马上就出现了?...原创 2021-12-17 14:19:43 · 650 阅读 · 0 评论
分享