Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->系统管理 ->正文

GDK Reference Manual

来源:Linux-cn.com 作者:Webmaster 时间:2007-05-05 点击: [收藏] [投稿]

GdkEvent *event;
GdkEventType type;
type = event->type; 

  To access other fields of the event structs, the pointer to the event can be cast to the appropriate event struct pointer, or the union member name can be used. For example if the event type is GDK_BUTTON_PRESS then the x coordinate of the button press can be accessed with:


GdkEvent *event;
gdouble x;
x = ((GdkEventButton*)event)->x; 

  or:


GdkEvent *event;
gdouble x;
x = event->button.x; 

  struct GdkEventAny


struct GdkEventAny
{
GdkEventType type;
GdkWindow *window;
gint8 send_event;
}; 

  Contains the fields which are common to all event structs. Any event pointer can safely be cast to a pointer to a GdkEventAny to access these fields.

  GdkEventType type the type of the event.

  GdkWindow *window the window which received the event.

  gint8 send_event TRUE if the event was sent explicitly (e.g. using XSendEvent).

  struct GdkEventKey


struct GdkEventKey
{
GdkEventType type;
GdkWindow *window;
gint8 send_event;
guint32 time;
guint state;
guint keyval;
gint length;
gchar *string;
}; 

  Describes a key press or key release event.

  GdkEventType type the type of the event (GDK_KEY_PRESS or GDK_KEY_RELEASE).

  GdkWindow *window the window which received the event.

  gint8 send_event TRUE if the event was sent explicitly (e.g. using XSendEvent).

  guint32 time the time of the event in milliseconds.

  guint state a bit-mask representing the state of the modifier keys (e.g. Control, Shift and Alt) and the pointer buttons. See GdkModifierType.

  guint keyval the key that was pressed or released. See the <gdk/gdkkeysym.h> header file for a complete list of GDK key codes.

  gint length the length of string.

  gchar *string a null-terminated multi-byte string containing the composed characters resulting from the key press. When text is being input, in a GtkEntry for example, it is these characters which should be added to the input buffer. When using Input Methods to support internationalized text input, the composed characters appear here after the pre-editing has been completed.

  struct GdkEventButton


struct GdkEventButton
{
GdkEventType type;
GdkWindow *window;
gint8 send_event;
guint32 time;
gdouble x;
gdouble y;
gdouble pressure;
gdouble xtilt;
gdouble ytilt;
guint state;
guint button;
GdkInputSource source;
guint32 deviceid;
gdouble x_root, y_root;
}; 

  Used for button press and button release events. The type field will be one of GDK_BUTTON_PRESS, GDK_2BUTTON_PRESS, GDK_3BUTTON_PRESS, and GDK_BUTTON_RELEASE.

  Double and triple-clicks result in a sequence of events being received. For double-clicks the order of events will be:


GDK_BUTTON_PRESS
GDK_BUTTON_RELEASE
GDK_BUTTON_PRESS
GDK_2BUTTON_PRESS
GDK_BUTTON_RELEASE

  Note that the first click is received just like a normal button press, while the second click results in a GDK_2BUTTON_PRESS being received just after the GDK_BUTTON_PRESS.

  Triple-clicks are very similar to double-clicks, except that GDK_3BUTTON_PRESS is inserted after the third click. The order of the events is:


GDK_BUTTON_PRESS
GDK_BUTTON_RELEASE
GDK_BUTTON_PRESS
GDK_2BUTTON_PRESS
GDK_BUTTON_RELEASE
GDK_BUTTON_PRESS
GDK_3BUTTON_PRESS
GDK_BUTTON_RELEASE

  For a double click to occur, the second button press must occur within 1/4 of a second of the first. For a triple click to occur, the third button press must also occur within 1/2 second of the first button press.

  GdkEventType type the type of the event (GDK_BUTTON_PRESS, GDK_2BUTTON_PRESS, GDK_3BUTTON_PRESS or GDK_BUTTON_RELEASE).

  GdkWindow *window the window which received the event.

  gint8 send_event TRUE if the event was sent explicitly (e.g. using XSendEvent).

  guint32 time the time of the event in milliseconds.

  gdouble x the x coordinate of the mouse relative to the window.

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<

上一页 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 4142 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 下一页


上一篇:GTK v1.2 Tutorial(英文)   下一篇:Java入门(12) 事件与错误处理

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
·Motorola微处理器bootloader分析与应用
·Fedora Core5 NFS服务器搭建过程介绍
·Linux系统:让内存不再泄漏的实用技巧
·新手看招 手把手教你安装VMware虚拟机
·“侵权事件” 红帽称微软企图干扰用户
·删除Linux后 如何找回Windows启动菜单
·菜鸟乐园 Linux中常见文件系统格式介绍
·Linux操作系统下IPTables配置方法详解
·实用技巧 Linux系统的经典使用技巧八则
·Linux系统文件优化及磁盘检查方法介绍
推荐文章
·什么时候应该使用Web Service
·如何监视某个tty?
·出错也不怕—Linux系统紧急情况处理
·Linux 指令篇:档案目录管理--ls
·开放源代码时代即将到来
·用PHP+MySQL构建一个招聘网站(10)
·理解和使用Oracle 8i分析工具-LogM
·JSP的环境引擎--websphere
精彩文章
·xfs文件系统(原创)
·Linux 指令篇:工作行程资讯与管理--
·用户界面原型开发:技巧和技术
·PHP的XML分析函数(一)
·编写Linux实用程序的艺术
·基于heartbeat的NFS HA实现
·如何阅读源代码
·一个网上理财站点的设计(二)
·Linux 指令篇:起始管理--reboot
·LInux 应用程序如何处理当前运行环
·mount使用指南
·用php生成excel文件
·Linux 常用命令(磁盘管理)
·架设 DHCP Server
·简易防火墙建置与流量统计
·J2EE概述
·[术语]GPL通用公共许可证
·内核空间SMP编程
·认识X-Window窗口管理器
·Linux内核网络参数的意义及应用
·Linux下硬盘分区的最佳方案
·JavaBean使用技巧
·基于DNS的多机均衡负载的实现
·python入门1
·Linux 网管 123 --- 第10章. 升级 L
·Oracle安装(linux)小结
Power by linux-cn.com 粤ICP备05006655号