资源描述
Android_linux_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长的字串,并以'{post.content}'为结束
返回值:成功返回TRUE,失败返回FALSE
参见 WriteClipboard
-----------------------------------
名称 WriteClipboard
原型 BOOL WriteClipboard (char *buf)
描述 向剪贴板写入内容
buf 欲写入的字串,以'{post.content}'为结束
返回值:成功返回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
展开阅读全文