Xlib:以最小化或最大化状态创建窗口

时间:2010-12-25 16:26:38

标签: c++ window xlib minimize maximize

是否可以使用Xlib创建最大化或最小化状态的窗口?如果是这样,我将如何做到这一点?

2 个答案:

答案 0 :(得分:7)

像这样;

XEvent xev;
Atom wm_state  =  XInternAtom(dpy, "_NET_WM_STATE", False);
Atom max_horz  =  XInternAtom(dpy, "_NET_WM_STATE_MAXIMIZED_HORZ", False);
Atom max_vert  =  XInternAtom(dpy, "_NET_WM_STATE_MAXIMIZED_VERT", False);

memset(&xev, 0, sizeof(xev));
xev.type = ClientMessage;
xev.xclient.window = win;
xev.xclient.message_type = wm_state;
xev.xclient.format = 32;
xev.xclient.data.l[0] = _NET_WM_STATE_ADD;
xev.xclient.data.l[1] = max_horz;
xev.xclient.data.l[2] = max_vert;

XSendEvent(dpy, DefaultRootWindow(dpy), False, SubstructureNotifyMask, &xev);

答案 1 :(得分:0)

_NET_WM_STATE中查看EWMH