Xlib 学习笔记

本文是关于Xlib的学习笔记,详细介绍了X Window System的概念,包括display、server-client模型、X协议、事件、缓冲和资源管理。讨论了窗口管理器、窗口特性和图形编程,涉及像素、colormaps、pixmaps、事件处理和原子管理等关键概念。此外,还涵盖了键盘和鼠标输入处理,以及数据交换的selections和cut buffers机制。
摘要由CSDN通过智能技术生成

<!-- @page { margin: 2cm } P { margin-bottom: 0.21cm } -->

Xlib 学习笔记

第一章
1.2 X Window System
概念
display:
由键盘,鼠标和一个或多个屏幕组成的一个工作站
screen
:一个display可以有多个screen

server-client
模型:
窗口管理器
事件
X
扩展

第二章  X概念
x
协议:
   
请求消息
   
回复消息:需要回复的请求比较浪费资源,需要等待网络传输
   
事件:
   
错误:

缓冲:
   xlib
会保存请求来使客户端持续运行不至于等待网络传输。
  
引起发送缓冲情况有:
  
调用等待事件函数但事件队列中没有匹配的事件,如:XNextEvent
  
客户端调用从服务器获得信息的函数,Query Fetch Get类函数
  
客户端强制刷新缓冲 XFlush XSync

资源
  
为了减少网络传输,x为每个抽象事物使用一个唯一id进行标识(window, gc, etc),也就是atom

properties
atoms
  property
是每个window拥有的一组属性。atom用来标识每个property,可通过XInternAtom()获得atomXA_为前坠的宏代表内置的atom

窗口管理器:
  substructure redirection
substurcture引用大小,位置,子窗口z序。redirection代表对窗口配置改变的请求。请求由窗口管理器决定是否实施。

Window
Window Characteristics:
  
父窗体:每个窗体都有父窗体,除了root window
  
窗体坐标系统:以窗体左上角为原点
   window
配置包含: 高和宽,边框宽度,位置xyz序。
   depth
色深,visual
  
窗体类别 inputoutput, inputonly
   
一组window属性:边框和背景的颜色,当窗体大小变化时窗体内布局如何变化,窗体何时自动保存被遮盖的内容,接受什么类型的事件,是否允许窗体移动显示不同过窗口管理器,窗体使用哪个colormap,窗体内显示什么样的指针。
  
Mapping
Visibility

XMapWindow() 在当前z-order位置映射窗口,XMapRaised()将窗口放到Z-order顶部映射,当窗体是第一次创建时,两者行为一样,都在顶层显示窗体。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值