Linux/XWindow的api函数介绍

     **********************************
     *     系统函数                    *
     **********************************

-----------------------------------
名称  GetScreenMode
原型  int GetScreenMode (void)
描述  得到当前屏幕的显示方式
      GP1288支持3种显示方式:单色、四灰阶、十六灰阶
      返回值:1 单色    2 四灰阶    4 十六灰阶
      出错返回:-1
参见  SetScreenMode
-----------------------------------
名称  SetScreenMode
原型  int SetScreenMode (int bpp)
描述  设置屏幕显示方式
      GP1288支持3种显示方式:单色、四灰阶、十六灰阶
      bpp=1 单色  bpp=2 四灰阶  bpp=4 十六灰阶
      返回值:0 成功
      出错返回:-1
参见  GetScreenMode
-----------------------------------
名称  ResetScreen
原型  void ResetScreen (void)
描述  初始化Microwindow的显示引擎,并重绘屏幕
参见 
-----------------------------------
名称  SetDefaultMenuWindow
原型  void SetDefaultMenuWindow (HWND hwnd)
描述  设置缺省的菜单控制窗口。这是MW的特殊函数。
      当有多个窗口控件时,最好设定此函数,以使软键盘上的“菜单”键被按下时,显示正确的菜单内容。
      菜单消息是WM系统内部产生的,AP无需处理。
      如果 hwnd 设为NULL时,默认为系统缺省的最上层窗口。
      要注意的是,当设置后,AP退出时,要再将其恢复为NULL。
参见  SetDefaultSearchWindow,SetDefaultSwitchWindow,SetDefaultKeyWindow
-----------------------------------
名称  SetDefaultSearchWindow
原型  void SetDefaultSearchWindow (HWND hwnd)
描述  设置缺省的查询控制窗口。这是MW的特殊函数。
参见  SetDefaultMenuWindow,SetDefaultSwitchWindow,SetDefaultKeyWindow
-----------------------------------
名称  SetDefaultSwitchWindow
原型  void SetDefaultSwitchWindow (HWND hwnd)
描述  设置缺省的切换控制窗口。这是MW的特殊函数。
      WM_SWITCH_OUT 消息在任务切换出时产生
      WM_SWITCH_IN  消息在任务切换回来时产生
参见  SetDefaultMenuWindow,SetDefaultMenuWindow,SetDefaultKeyWindow
-----------------------------------
名称  SetDefaultKeyWindow
原型  void SetDefaultKeyWindow (HWND hwnd)
描述  设置缺省的按键响应控制窗口。这是MW的特殊函数。
参见  SetDefaultMenuWindow,SetDefaultSearchWindow,SetDefaultSwitchWindow
-----------------------------------
名称 
      GetDefaultMenuWindow
      GetDefaultSearchWindow
      GetDefaultSwitchWindow
      GetDefaultKeyWindow
原型 
      HWND GetDefaultMenuWindow (void)
      HWND GetDefaultSearchWindow (void)
      HWND GetDefaultSwitchWindow (void)
      HWND GetDefaultKeyWindow (void)
描述  得到当前的处理菜单(查询、任务切换、按键响应)的主控窗口,返回句柄号
参见  SetDefaultMenuWindow
-----------------------------------
名称  OpenClipboard
原型  BOOL OpenClipboard (HWND hOwner)
描述  打开剪贴板。系统只有一个剪贴板。
      hOwner 欲打开剪贴板的窗口句柄
      返回值:成功返回TRUE,失败返回FALSE
参见  CloseClipboard
-----------------------------------
名称  CloseClipboard
原型  BOOL CloseClipboard (VOID)
描述  关闭剪贴板。打开剪贴板后必需关闭。
      返回值:成功返回TRUE,失败返回FALSE
参见  OpenClipboard
-----------------------------------
名称  ReadClipboard
原型  BOOL ReadClipboard (char *buf, int buf_size)
描述  读出剪贴板的内容
      buf 读出的内容
      buf_size 读出长度
      如果读出长度小于剪贴板中的数据长度,则读出buf_size-1长的字串,并以'/0'为结束
      返回值:成功返回TRUE,失败返回FALSE
参见  WriteClipboard
-----------------------------------
名称  WriteClipboard
原型  BOOL WriteClipboard (char *buf)
描述  向剪贴板写入内容
      buf 欲写入的字串,以'/0'为结束
      返回值:成功返回TRUE,失败返回FALSE
参见  ReadClipboard
-----------------------------------
名称  GetClipboardSize
原型  long GetClipboardSize (void)
描述  得到当前剪贴板中的数据长度
      返回值:数据长度
参见 
-----------------------------------
名称  IsClipboardEmpty
原型  BOOL IsClipboardEmpty (void)
描述  检测剪贴板是否为空
      返回值:空为TRUE,非空为FALSE
参见 
-----------------------------------
名称  EmptyClipboard
原型  BOOL EmptyClipboard (void)
描述  清空剪贴板内容
      返回值:成功返回TRUE,失败返回FALSE
参见 
-----------------------------------
名称  IsClipboardFormatAvailable
原型  BOOL IsClipboardFormatAvailable (UINT uFormat)
描述  检测剪贴板内数据的类型
      返回值:成功返回TRUE,失败返回FALSE
      现支持类型 : CF_TEXT,即目前只支持文本(其它类型以后再提供)
参见 
-----------------------------------
名称  SetClipboardData
原型  HANDLE SetClipboardData (UINT uFormat, HANDLE hMem)
描述  按照数据的类型向剪贴板写入内容
      uFormat 数据的类型
      hMem 数据的地址
      返回值:成功返回TRUE,失败返回FALSE
      现支持类型 : CF_TEXT
参见  GetClipboardDat
-----------------------------------
名称  GetClipboardData
原型  HANDLE GetClipboardData (UINT uFormat)
描述  按照数据的类型取得剪贴板数据地址
      返回值:成功返回地址,失败返回NULL
      uFormat 现只支持 CF_TEXT
参见  SetClipboardData
-----------------------------------
名称  SelectClipRgn
原型  int WINAPI SelectClipRgn(HDC hdc, HRGN hrgn)
描述  设置图形设备的客户显示区域,直接拷贝方式
      hdc: 图形设备的句柄
      hrgn: 区域数据指针
      返回值:成功返回区域类型,失败返回 NULLREGION(0xffffffff)
参见  ExtSelectClipRgn
-----------------------------------
名称  ExtSelectClipRgn
原型  int WINAPI ExtSelectClipRgn(HDC hdc, HRGN hrgn, int fnMode)
描述  设置图形设备的客户显示区域
      hdc     : 图形设备的句柄
      hrgn    : 区域数据指针
      fnMode  : 设置方式:
                RGN_COPY        直接拷贝
  RGN_AND         取hdc旧区域和hrgn的公共部分
  RGN_OR          hdc旧区域和hrgn 叠加
  RGN_XOR         hdc旧区域和hrgn 的不同部分
  RGN_DIFF        hdc旧区域和hrgn 相减
      返回值:成功返回区域类型,失败返回 NULLREGION(0xffffffff)
参见  SelectClipRgn
-----------------------------------
名称  SwitchTo
原型  void SwitchTo (char *fullpath, char *args)
描述  切换到另一个任务
      fullpath 另一任务的完整路径名称
      args 参数,如有多个参数中间用空格分隔
      我们推荐用SwitchTo和下面提到的QuitTo来切换MicroWindow的AP,因为MW的AP不在通常的任务
      管理中管理。如果切换的不是MW的AP,还是用系统的 exec,fork。
参见  QuitTo
-----------------------------------
名称  QuitTo
原型  void QuitTo (char *fullpath, char *args)
描述  退出当前的MW程序并切换到另一任务
参见  SwitchTo
-----------------------------------
名称  InputBox
原型  char *InputBox (char *buf, int buf_len, const char *text1, const char *text2, BOOL pwd_mask)
描述  用来获得用户输入文本的简单方法
      buf 保存用户输入文本的缓冲区
      buf_len 缓冲区长度
      text1 字符串1
      text2 字符串2
      pwd_mask 当输入是密码时,显示的是"*"来加以保护。
               TRUE 密码输入
               FALSE 非
      返回值:如取消输入返回NULL,否则返回字串长度
      注意:缓冲区可以为空,也可有预设值。如果你希望这个输入框上有预设的内容时,可以将其填到
           buf上。buf的长度最大为255。
参见 
-----------------------------------
名称  EnableBuzzer
原型  void EnableBuzzer (BOOL on)
描述  在系统的蜂鸣器开启时,使能当前AP的蜂鸣器
      on TRUE 使能   FALSE 关闭
      注意:此函数的使用不会影响到系统的蜂鸣器状态
参见  IsBuzzerOn
-----------------------------------
名称  IsBuzzerOn
原型  BOOL IsBuzzerOn (void)
描述  检测当前的蜂鸣器是否开启
      返回值:TRUE 开启  FALSE 关闭
参见  EnableBuzzer
-----------------------------------
名称  ControlBuzzer
原型  void ControlBuzzer (int freq, int duration)
描述  控制蜂鸣器以特定的频率和时间发音
      freq 发音频率  
      duration 持续时间
参见  Beep
-----------------------------------
名称  Beep
原型  void Beep (void)
描述  蜂鸣器发出“吡”的一声。这相当于用4K的频率,100的duration调用ControlBuzzer
参见  ControlBuzzer
-----------------------------------
名称  ControlRedLED
原型  void ControlRedLED (BOOL on)
描述  控制GP1288的红色LED灯
      on TRUE 开启    FALSE 关闭
      同样的,这也不会影响到系统对LED的设定
参见  ControlGreenLED
-----------------------------------
名称  ControlGreenLED
原型  void ControlGreenLED (BOOL on)
描述  控制GP1288的绿色LED灯
      on TRUE 开启    FALSE 关闭
参见  ControlRedLED
-----------------------------------
名称  ControlMotor
原型  void ControlMotor (BOOL on)
描述  控制GP1288的震动马达
      on TRUE 开启    FALSE 关闭
参见 
-----------------------------------
名称  ControlButton
原型  void ControlButton (int speed)
描述  在本任务内,控制键盘连续按键的响应速度
      speed 速度值,范围在-10到50之间由慢变快
      切换到其他任务后,响应速度恢复变为默认值
参见 
-----------------------------------
名称  SetLocalLanguage
原型  void SetLocalLanguage (int lang)
描述  在本任务内设置语言选项
      lang 0:大陆,GB码 1:台湾,Big5码  2:香港,Big5码  3:英文  -1:禁止切换
      当使用此函数设置语言后后,一般需要更新屏幕,通知控件他们的显示。
      实际上,这只是设置显示文字的方式,就是说,是用GB码还是Big5码的格式读取和显示汉字。
参见  GetLanguage
-----------------------------------
名称  GetLanguage
原型  int GetLanguage (void)
描述  得到语言设置的返回值
      返回值:lang 0:北京,GB码 1:台湾,Big5码  2:香港,Big5码  3:英文  -1:禁止切换
参见  SetLocalLanguage
-----------------------------------
名称  GetRegionCode
原型  int GetRegionCode (void)
描述  得到GP1288的区域号
      返回值:0:北京  1:台湾  2:香港  3:英文   -1:出错
参见 
-----------------------------------
名称  GetProductName
原型  int GetProductName (char *buf)
描述  得到产品名称
      buf 读出的产品名称
      返回值:如果buf==NULL  返回实际需要的长度
             否则,成功返回0;失败返回-1
参见  GetSerialNumber
-----------------------------------
名称  GetSerialNumber
原型  int GetSerialNumber (char *buf)
描述  得到GP1288的S/N(串号)
      buf 读出的S/N
      返回值:如果buf==NULL  返回实际需要的长度
             否则,成功返回0;失败返回-1
参见  GetProductName
-----------------------------------
名称  GetPanelKeys
原型  BOOL GetPanelKeys (BOOL bEnable)
描述  系统是否产生(UP,DOWN,LEFT,RIGHT,HOME,END)6个按键消息
      在GP1288上,我们将按键分组,这6个按键(就是方向键和边上两个键)归于PanelKeys组,可以
      通过程序设定是否起作用,即按下后是否发送按键消息,能被系统接收。其虚拟键值为:
       VK_UP 方向键上
       VK_DOWN 方向键下
       VK_LEFT 方向键左
       VK_RIGHT 方向键右
       VK_HOME HOME键,默认也是Holink键
       VK_END END键,默认是邮件键
      bEnable TRUE ,产生按键消息;FALSE 不产生按键消息
参见  GetSoftKeys
-----------------------------------
名称  GetSoftKeys
原型  BOOL GetSoftKeys (BOOL bEnable);
描述  系统是否产生目录、菜单、查找、计算、字典、切换、红外、录音的按键消息
      在GP1288上,我们将按键分组,这8个按键归于SoftKeys组,可以通过程序设定是否起作用,即按
      下后是否发送按键消息,能被系统接收。其虚拟键值为:
      VK_F1 软键盘上的目录键
        VK_F2 软键盘上的菜单键
        VK_F3 软键盘上的查找键
        VK_F4 软键盘上的计算键
        VK_F5 软键盘上的字典键
        VK_F6 软键盘上的切换键
        VK_LBUTTON 红外键
        VK_RBUTTON 录音键
      bEnable TRUE ,产生按键消息;FALSE 不产生按键消息       
参见  GetPanelKeys
-----------------------------------
名称  IsGetPanelKeys
原型  BOOL IsGetPanelKeys (void)
描述  系统是否允许PanelKeys起作用
      返回值:TRUE 起作用  FALSE 不起作用
参见  GetPanelKeys
-----------------------------------
名称  IsGetSoftKeys
原型  BOOL IsGetSoftKeys (void)
描述  系统是否允许目录、菜单、查找、计算、字典、切换、红外、录音键起作用
      返回值:TRUE 起作用  FALSE 不起作用
参见  GetSoftKeys
-----------------------------------
名称  InitXime
原型  #include<xime.h>
      HWND InitXime (HWND owner, InputMethod ime)
描述  以设定的方式初试化输入法
      要注意的是,凡是涉及到Xime的函数,都要包含 xime.h这个头文件
      owner 欲开启输入法的窗口句柄
      ime 输入法代表字
      返回值:输入法句柄值,出错返回NULL
      输入法代表字含义:
       XIME_NONE       最小化
       XIME_ASCII      ASCII字符输入
       XIME_SYMBOL     符号输入
       XIME_PHONE      电话符号输入
       XIME_CJ         繁体仓颉输入法
       XIME_BOSHIAMY   繁体注音
       XIME_HANDWRITE  手写输入
       XIME_SPCODE     大写符号
       XIME_PINYIN     全拼输入
       XIME_WUBI       五笔输入
       XIME_DEFAULT    系统默认输入法
       XIME_USER       自定义输入法
      输入法变化后会自动发出信息
       WM_XIME_MINIMIZE  输入法最小化
       WM_XIME_RESTORE   从最小化恢复
       WM_XIME_CHANGED   输入方式变化
      注意:调用初试化输入法的时间应在Winmain()中的CreatWindow或对话框建立后,并且
           InitXime只能被调用一次,除非你已经销毁过他。
参见  InitXimeEx
-----------------------------------
名称  InitXimeEx
原型  HWND InitXimeEx (HWND owner, InputMethod ime, int sub, int visible)
描述  用附加属性修饰的初试化输入法
      owner 欲开启输入法的窗口句柄
      ime 输入法代表字
      sub 0:默认符号  1:半角符号  2:全角符号
参见  InitXime
-----------------------------------
名称  SelectXime
原型  void SelectXime (InputMethod ime)
描述  在使用中改变输入法
参见  InitXime
-----------------------------------
名称  SelectXimeEx
原型  void SelectXimeEx(InputMethod ime, int sub)
描述  在使用中改变输入法,并有附加属性修饰
参见  SelectXime,InitXime,InitXimeEx
-----------------------------------
名称  SetXimeOwner
原型  HWND SetXimeOwner(HWND owner)
描述  在其他对话框中使用输入法时,要调用此函数设定。
      输入法作为一个控件,只能被一个窗体所使用。如果你想在另外一个窗口控件(比如对话框)中使
      用,必需为它设定新的属主。
      不过千万要记得,在销毁新属主前要将 owner 设回来。
      owner 新属主的句柄
      返回值:前次属主的句柄
参见 
-----------------------------------
名称  DestroyXime
原型  void DestroyXime(void)
描述  手工销毁输入法控件
参见  InitXime
-----------------------------------
名称  ReInitXime
原型  int ReInitXime (void)
描述  手工重新刷新输入法控件。
      这并没有破坏原有的句柄,只是重新刷新。
      当切换语言时需要这样手工刷新。
参见  InitXime
-----------------------------------
名称  GetSelectedIME
原型  InputMethod GetSelectedIME (void)
描述  返回当前的输入法输入类型
参见  InitXime
-----------------------------------
名称  GetXimeSubStyle
原型  int GetXimeSubStyle (void)
描述  返回当前输入法的附加修饰类型
参见  InitXime
-----------------------------------
名称  GetXimeHandler
原型  HWND GetXimeHandler (void)
描述  返回输入法控件的句柄
      必需在InitXime之后才能调用。
      还要注意的是,如果是自定义的输入法,请不要调用此函数。
参见 
-----------------------------------
名称  PopupXimeMenu
原型  void PopupXimeMenu (int x, int y)
描述  输入法的弹出菜单(就是那个有各种输入法选项的菜单)的位置
      x 横坐标位置   y 纵坐标位置
参见  EnableXimeMinimize
-----------------------------------
名称  EnableXimeMinimize
原型  int EnableXimeMinimize (BOOL bEnable);
描述  在输入法弹出菜单上激活(取消)最小化选项
      缺省状态下,输入法控件弹出菜单是没有最小化选项的,
      调用此函数可以使其出现
      bEnable TRUE 显示最小化选项  FALSE 隐藏最小化选项
      返回值:0 成功  -1 失败
参见  PopupXimeMenu
-----------------------------------
名称  DefXimeProc
原型  LRESULT CALLBACK DefXimeProc (HWND, UINT, WPARAM, LPARAM)
描述  缺省的输入法处理部件。
      如果您写了外挂的自定义输入法,就应该使用DefXimeProc()作为缺省的消息处理部件,在
      UserXimeProc()中替代DefWindowProc()
参见  DefWindowProc
-----------------------------------

     **********************************
     *     用户界面函数                 *
     **********************************

-----------------------------------
名称  WinMain
原型  int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine, int iCmdShow)
描述  此函数被系统呼叫,作为MicroWindow程序的初试化入口点,相当于C程序中的main()
      hInstance 该程序的实例句柄
      hPrevInstance 其他实例的句柄,但实际上其总为NULL
      szCmdLine 用于运行程序的命令行,某些AP使用这个参数以在程序启动时将文件加载到内存
      iCmdShow 程序最初显示的方式
      实际上,我们不需要在WinMain时考虑这些参数,这些参数实际上是被MicroWindow传递并使用的
      返回值:WinMain带来的消息循环在接收到WM_QUIT时退出,同时返回退出代码
             如果在消息循环之前即退出,返回0
参见  CreateWindow,RegisterClass,ShowWindow,UpdateWindow
-----------------------------------
名称  RegisterClass
原型  ATOM WINAPI RegisterClass(CONST WNDCLASS *lpWndClass)
描述  注册窗口类
      窗口总是在窗口类的基础上创建的,窗口类用以标识处理窗口消息的窗口过程
      在为程序创建窗口之前,必需先调用RegisterClass注册一个窗口类
      lpWndClass 一个指向类型为WNDCLASS 的指针结构
      我们要在调用此函数前,先声明一个WNDCLASS 的结构,并为其相关域覆值,例如
      WNDCLASS wndclass;
      WNDCLASS 在winuser.h中定义,结构如下:
         typedef struct tagWNDCLASSA {
           MWLIST      link;           //
           UINT        style;          //类风格
           WNDPROC     lpfnWndProc;    //基于这个类所创建窗口所使用的窗口过程的地址
           int         cbClsExtra;     //
           int         cbWndExtra;     //
           HINSTANCE   hInstance;      //实例句柄
           HICON       hIcon;          //图标
           HCURSOR     hCursor;        //光标
           HBRUSH      hbrBackground;  //背景
           LPCSTR      lpszMenuName;   //窗口类菜单名称
           LPCSTR      lpszClassName;  //窗口类的名称
           CHAR        szClassName[40];//
         } WNDCLASS
      类风格中,每一种风格为一位,可以由位“或”来进行组合:
        CS_VREDRAW            窗口纵向变化后重绘
        CS_HREDRAW            窗口横向变化后重绘
        CS_DBLCLKS            发送双击鼠标消息
        CS_OWNDC              给该类中的每个窗口分配一个唯一的设备描述表,只需要初始化设备描述
                              表一次,DC将一直存在,直到窗口被删除
        CS_CLASSDC            给该类中的窗口只分配一个共享的设备描述表号
        CS_PARENTDC           使子窗口剪贴板区域与父窗口重合
        CS_NOCLOSE            窗口菜单上不出现“关闭”选项
        CS_SAVEBITS           在窗口重绘时,不发WM_PAINT消息,而是用保存的窗口位图刷新
        CS_BYTEALIGNCLIENT        
        CS_BYTEALIGNWINDOW
        CS_GLOBALCLASS        该窗口类具有全局属性
       实际上,目前版本的MicroWindow只是模仿Windows的特性,这些风格中,目前只有CS_OWNDC
       是真正需要设置的。 (因为窗体尺寸不会变化,也没有双击,剪贴板也只有一个...
参见  CreateWindow, CreateWindowEx, ShowWidow
-----------------------------------
名称  CreateWindow
原型  HWND WINAPI CreateWindow(LPCSTR lpClassName, LPCSTR lpWindowName,DWORD dwStyle,
 int x, int y, int nWidth, int nHeight,HWND hwndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam)
描述  这个函数在内存区域内开辟一个窗口。
      它同时定义了窗口的类、标题、风格、初始位置及大小等。
      lpClassName      指向注册的类,类必需由 RegisterClass 来注册
      lpWindowName     窗口的名称
      dwStyle          窗口的风格
      x                窗口左上角的横标
      y                窗口左上角的纵标
      nWidth           窗口宽度
      nHeight          窗口高度
      hWndParent       父窗口句柄,如是最高级窗口,则为NULL
      hMenu            菜单或子窗口句柄
      hInstance        程序的实例句柄,是该是由WinMain传递过来的
      lpParam          可以用这个指针访问以后向饮用的程序中的数据
      注册类可以是新注册的类名称,也可以是系统中已经指定的类,比如:
       BUTTON          按钮
       COMBOBOX        组合框
       EDIT            编辑框
       LISTBOX         列表框
       SCROLLBAR       滚动条
       STATIC          静态文本  等
      窗口可以有多种风格(Style),这也是可以按位组合的一些选项:
       WS_BORDER        窄边框
       WS_CAPTION       有标题栏
       WS_CHILD         创建子窗口。此风格不能与WS_POPUS共用
       WS_CHILDWINDOW   与 WS_CHILD 相同
       WS_CLIPCHILDREN  在父窗口绘图时不考虑被子窗口占据的部分
       WS_CLIPSIBLINGS  使子窗口互相关联,当一个子窗口发出WM_PAINT消息时,其它重叠窗口不受影响
       WS_DISABLED      不能接受用户输入的“死”窗口
       WS_DLGFRAME      对话框型的边框
       WS_GROUP         指定第一群组控制
       WS_HSCROLL       有横向的滚动条
       WS_ICONIC        初始化为最小化的窗口
       WS_MAXIMIZE      初始化为最大化的窗口
       WS_MAXIMIZEBOX   有最大化按钮
       WS_MINIMIZEBOX   同WS_ICONIC
       WS_OVERLAPPED    重叠类型的窗口
       WS_POPUP         弹出类型的窗口
       WS_SYSMENU       标题栏上有菜单
       WS_TILED         同WS_OVERLAPPED
       WS_VISIBLE       初使化即为可见的
       WS_VSCROLL       有纵向的滚动条
      返回值:成功返回新窗口句柄,失败返回NULL。
      在返回前,其会发出WM_CREATE的消息给窗口过程。      
参见  CreateWindowEx, RegisterClassEx
-----------------------------------
名称  CreateWindowEx
原型  CreateWindowEx(DWORD dwExStyle, LPCSTR lpClassName, LPCSTR lpWindowName,DWORD dwStyle,
 int x, int y, int nWidth, int nHeight,HWND hwndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam)
描述  此函数在CreateWindow的基础上,额外多定义了窗口的扩展风格,除此外等同于CreateWindow
      扩展风格定义在Winuser.h中,共有:
      WS_EX_DLGMODALFRAME       窗口具有双层边框 
      WS_EX_NOPARENTNOTIFY      子窗口在创建和销毁时,不向其父窗口发送WM_PARENTNOTIFY消息
      WS_EX_TOPMOST             该窗口出现在最顶级,甚至当其不在焦点时都如此
      WS_EX_ACCEPTFILES         接受拖拽文件
      WS_EX_TRANSPARENT         透明窗口,直到其下层窗口被重绘时其才重绘
      WS_EX_MDICHILD            产生MID窗口
      WS_EX_TOOLWINDOW          产生一个工具窗口,并不出现在任务栏上
      WS_EX_WINDOWEDGE          指定窗口边框的边缘加高
      WS_EX_CLIENTEDGE          指定窗口边框的边缘下沉
      WS_EX_CONTEXTHELP         窗口标题栏上,当用户点击时出现“这是什么”的光标
      WS_EX_SHOWKEYB            指定窗口边框边缘
      WS_EX_RIGHT               右对齐窗口
      WS_EX_LEFT                左对齐窗口,这是默认值
      WS_EX_RTLREADING          使用由右至左的阅读排列文字格式
      WS_EX_LTRREADING          使用由左至右的阅读排列文字格式
      WS_EX_LEFTSCROLLBAR       如是 RTLREADING 方式,纵向滚动条放在左边
      WS_EX_RIGHTSCROLLBAR      默认的滚动条在右边
      WS_EX_STATICEDGE          不接受用户输入的静态类型
      WS_EX_APPWINDOW           当窗口可见时,强制顶级窗口出现在任务条上
      WS_EX_LAYERED            
      WS_EX_OVERLAPPEDWINDOW    WS_EX_CLIENTEDGE 与WS_EX_WINDOWEDGE  风格的合集
      WS_EX_PALETTEWINDOW       WS_EX_WINDOWEDGE WS_EX_TOOLWINDOW 与WS_EX_TOPMOST风格的合集
     返回值:成功返回新窗口句柄,失败返回NULL。
     在返回前,其会发出WM_CREATE的消息给窗口过程。  
参见  CreateWindow
-----------------------------------
名称  ShowWindow
原型  BOOL WINAPI ShowWindow(HWND hwnd, int nCmdShow)
描述  使一个指定窗口被显示
      hwnd  窗口句柄
      nCmdShow 指定窗口显示方式
      在首次调用时,该参数是由WinMain函数中传递过来的,在后续调用中,可以使用:
       SW_HIDE                隐藏此窗口并激活另外的窗口
       SW_SHOWNORMAL          激活并显示此窗口 
       SW_NORMAL             
       SW_SHOWMINIMIZED       激活并最小化显示此窗口
       SW_SHOWMAXIMIZED       激活并最大化显示此窗口
       SW_MAXIMIZE            最大化此窗口
       SW_SHOWNOACTIVATE      显示此窗口并不影响其他激活的窗口
       SW_SHOW                在当前位置以其窗口的大小激活并显示 
       SW_MINIMIZE            最小化此窗口
       SW_SHOWMINNOACTIVE     以最小化方式显示窗口,并不影响其他激活的窗口
       SW_RESTORE             以其原始尺寸激活并显示
       SW_SHOWDEFAULT        
       SW_MAX                 以最大化方式显示窗口
      返回值:如此窗口当前为可见,返回非0值;如为隐藏,返回0     
参见  WinMain,CreateWindow
-----------------------------------
名称  UpdateWindow
原型  BOOL WINAPI UpdateWindow(HWND hwnd)
描述  此函数通过给窗口过程发送WM_PAINT消息,使窗口的客户区被绘制
      hwnd  窗口句柄
      返回值:成功返回TRUE,失败返回FALSE
参见  ShowWindow
-----------------------------------
名称  DestroyWindow
原型  BOOL WINAPI DestroyWindow(HWND hwnd)
描述  销毁指定的窗口
      此函数发出WM_DESTROY消息给窗口进程,释放和去除该窗口的键盘焦点。
      同时也销毁窗口的菜单、记数器等,如果该窗口是父窗口,也自动的销毁其关联的子窗口,
      及其由CreateDialog创建的对话框。
      hwnd  要销毁的窗口句柄
      返回值:成功返回TRUE,失败返回FALSE
参见  CreateWindow,CreateWindowEx,CreateDialog
-----------------------------------
名称  IsWindow
原型  BOOL WINAPI IsWindow(HWND hwnd)
描述  该函数判断指定的句柄是否是存在的窗口
      hwnd  要进行判断的窗口句柄
      返回值:如是已存在窗口返回TRUE,否则返回FALSE
参见 
-----------------------------------
名称  DefWindowProc
原型  LRESULT WINAPI DefWindowProc(HWND hwnd,UINT msg,WPARAM wParam,LPARAM lParam)
描述  该函数调用缺省的窗口进程处理一个窗口应用未处理的消息
      其以同样的参数被窗口过程所调用
      一般来说我们必需在消息循环中调用此函数以处理系统事件,比如:
       {
       switch(message){
         case XXX:
           ......
         case YYY:
           ......
       }
       return DefWindowProc(hwnd, msg,wParam,lParam)
       }
      hwnd   指向接受消息的窗口过程
      msg    消息
      wParam 由MAG结构传递的额外参数
      lParam 由MAG结构传递的额外参数
      返回值:依赖于消息产生的过程处理结果
参见  CallWindowProc, DefDlgProc
-----------------------------------
名称  CallWindowProc
原型  LRESULT WINAPI CallWindowProc(WNDPROC lpPrevWndFunc, HWND hwnd, UINT Msg, WPARAM wParam, LPARAM lParam)
描述  将消息传递给指定的窗口处理过程
      lpPrevWndFunc  指向改变以前的窗口过程
      hWnd           接受消息的窗口过程句柄
      Msg            希望处理的消息
      wParam         消息的第一个参数
      lParam         消息的第二个参数
      返回值:依赖于消息处理的结果
      SetWindowLong 函数可以通过改变窗口关联的处理过程,来使系统使用新的窗口过程来替代旧
      的。这样的应用必需要把它在新窗口过程中未处理的消息通过CallWindowProc来传递给原来的
      窗口过程。
      CallWindowProc的程序处理实际上非常简单:
       CallWindowProc(WNDPROC lpPrevWndFunc, HWND hwnd, UINT Msg, WPARAM wParam,  LPARAM lParam)
       {
          return (*lpPrevWndFunc)(hwnd, Msg, wParam, lParam);
       }
参见  SetWindowLong
----------------------------------- 
名称  SetWindowLong
原型  LONG WINAPI SetWindowLong(HWND hwnd, int nIndex, LONG lNewLong)
描述  此函数通过设置指定窗口的扩展窗口内存的32位长整型偏移值,来重新设定窗口属性
      hwnd     指定窗口的句柄
      nIndex   设定属性的索引
      lNewLong 指定要设定替换的值
      索引在Winuser.h中定义,窗口扩展内存的32位长整型数偏移位置,包括:
       GWL_EXSTYLE       新设定窗口的扩展风格
       GWL_EXSTYLE       新设定窗口风格
       GWL_WNDPROC       用新的窗口处理过程替换原来的
       GWL_HINSTANCE     新设定窗口实例句柄
       GWL_ID            窗口ID
       GWL_USERDATA      新的关联此窗口的32位的值
      用GWL_WNDPROC 索引,lNewLong要用long强制转换的新窗口过程的地址。
      这样就可以使指定窗口用这个新的窗口过程来预先处理,但如想再用原来的窗口过程,
      则要使用函数CallWindowProc
      返回值:成功返回以前的32位整型数,失败返回0
参见  CallWindowProc,GetWindowLong
-----------------------------------
名称  SetLayeredWindowAttributes
原型  BOOL WINAPI SetLayeredWindowAttributes(HWND hwnd, COLORREF crKey, BYTE bAlpha, DWORD dwFlags)
描述  目前只有此函数原型,但尚未支持
参见 
-----------------------------------
名称  GetWindowLong
原型  LONG WINAPI GetWindowLong(HWND hwnd, int nIndex)
描述  得到指定窗口的信息,即指定的扩展窗口内存中的32位长整型数值
      hwnd   指定窗口的句柄
      nIndex 窗口扩展内存的32位长整型数偏移位置
      返回值:成功返回指定偏移的32位长整型数值,失败返回0
参见  SetWindowLong
-----------------------------------
名称  GetWindowWord
原型  WORD WINAPI GetWindowWord(HWND hwnd, int nIndex)
描述  这个函数实际上在32位模式下是作废的,要应用GetWindowLong替代
参见  GetWindowLong
-------------&

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值