3.6 窗口标识符
窗口标识符是在事件系统中用来唯一确定窗口的整数。事实上,在整个应用程序的范围内,窗口标识符不必一定是唯一的,而只要在某个固定的上下文(比如说,在一个frame窗口和它的所有子窗口)内是唯一的就可以了。举例来说:你可以在无数个对话框中使用wxID_OK这个标识符,只要在某个对话框内不要重复使用就可以了。
如果在窗口的构造函数中使用wxID_ANY作为其标识符,则意味着你希望wxWidgets自动为你生成一个标识符。这或者是因为你不关心这个标识符的值,或者是因为这个窗口不需要处理任何事件,或者是因为你将在同一个地方处理所有的事件。如果是最后一种情况,在使用 wxEvtHandler::Connect函数或者在静态事件表中,你应该使用wxID_ANY作为窗口的标识符。wxWidgets自动创建的标识符是总是一个负数,所以永远不会和用户定义的窗口标识符重复,用户定义的窗口标识符只能是正整数。
下表列举了wxWidgets提供的一些标准的标识符。你应该尽可能的使用这些标识符,这是由于下面一些原因。某些系统会给特定的标识符提供一些小图片(例如GTK+系统上的OK和取消按钮)或者提供默认的处理函数(例如自动产生wxID_CANCEL事件来响应Escape键)。在 Mac OS X系统上,wxID_ABOUT, wxID_PREFERENCES和wxID_EXIT菜单项也有特别的处理。另外一些wxWidgets的控件也会自动处理标识符为 wxID_COPY, wxID_PASTE或 wxID_UNDO等的一些菜单或者按钮的命令。
标识符名称 | 描述 |
---|---|
wxID_ANY | 让wxWidgets自动产生一个标识符 |
wxID_LOWEST | 最小的系统标识符值 (4999) |
wxID_HIGHEST | 最大的系统标识符值 (5999) |
wxID_OPEN | 打开文件 |
wxID_CLOSE | 关闭窗口 |
wxID_NEW | 新建窗口文件或者文档 |
wxID_SAVE | 保存文件 |
wxID_SAVEAS | 文件另存为(应该弹出文件位置对话框) |
wxID_REVERT | 恢复文件在磁盘上的状态 |
wxID_EXIT | 退出应用程序 |
wxID_UNDO | 撤消最近一次操作 |
wxID_REDO | 重复最近一次操作 |
wxID_HELP | 帮助 (例如对话框上的帮助按钮可以用这个标识符) |
wxID_PRINT | 打印 |
wxID_PRINT_SETUP | 打印设置 |
wxID_PREVIEW | 打印预览 |
wxID_ABOUT | 显示一个用来描述整个程序的对话框 |
wxID_HELP_CONTENTS | 显示上下文帮助 |
wxID_HELP_COMMANDS | 显示应用程序命令 |
wxID_HELP_PROCEDURES | 显示应用程序过程 |
wxID_HELP_CONTEXT | 未使用 |
wxID_CUT | 剪切 |
wxID_COPY | 复制到剪贴板 |
wxID_PASTE | 粘贴 |
wxID_CLEAR | 清除 |
wxID_FIND | 查找 |
wxID_DUPLICATE | 复制 |
wxID_SELECTALL | 全选 |
wxID_DELETE | 删除 |
wxID_REPLACE | 覆盖 |
wxID_REPLACE_ALL | 全部覆盖 |
wxID_PROPERTIES | 查看属性 |
wxID_VIEW_DETAILS | 列表框中的按照详细信息方式显示 |
wxID_VIEW_LARGEICONS | 列表框按照大图标的方式显示 |
wxID_VIEW_SMALLICONS | 列表框中按照小图标的方式显示 |
wxID_VIEW_LIST | 列表框中按照列表的的方式显示 |
wxID_VIEW_SORTDATE | 按照日期排序 |
wxID_VIEW_SORTNAME | 按照名称排序 |
wxID_VIEW_SORTSIZE | 按照大小排序 |
wxID_VIEW_SORTTYPE | 按照类型排序 |
wxID_FILE1 to wxID_FILE9 | 显示最近使用的文件 |
wxID_OK | 确定 |
wxID_CANCEL | 取消 |
wxID_APPLY | 应用变更 |
wxID_YES | YES |
wxID_NO | No |
wxID_STATIC | 静态文本或者静态图片可以用这个标识符 |
wxID_FORWARD | 向前 |
wxID_BACKWARD | 向后 |
wxID_DEFAULT | 恢复默认设置 |
wxID_MORE | 显示更多选项 |
wxID_SETUP | 显示一个设置对话框 |
wxID_RESET | 重置所有选项 |
wxID_CONTEXT_HELP | 显示上下文帮助 |
wxID_YESTOALL | 全部选是 |
wxID_NOTOALL | 全部选否 |
wxID_ABORT | 中止当前操作 |
wxID_RETRY | 重试 |
wxID_IGNORE | 忽略错误 |
wxID_UP | 向上 |
wxID_DOWN | 向下 |
wxID_HOME | 首页 |
wxID_REFRESH | 刷新 |
wxID_STOP | 停止正在进行的操作 |
wxID_INDEX | 显示一个索引 |
wxID_BOLD | 加粗显示 |
wxID_ITALIC | 斜体显示 |
wxID_JUSTIFY_CENTER | 居中 |
wxID_JUSTIFY_FILL | 格式 |
wxID_JUSTIFY_RIGHT | 右对齐 |
wxID_JUSTIFY_LEFT | 左对齐 |
wxID_UNDERLINE | 下划线 |
wxID_INDENT | 缩进 |
wxID_UNINDENT | 反缩进 |
wxID_ZOOM_100 | 放大到100% |
wxID_ZOOM_FIT | 缩放到整页 |
wxID_ZOOM_IN | 放大 |
wxID_ZOOM_OUT | 缩小 |
wxID_UNDELETE | 反删除 |
wxID_REVERT_TO_SAVED | 恢复到上次保存的状态 |
为了避免你自己定义的标识符和这些预定义的标识符重复,你可以使用大于wxID_HIGHEST的标识符或者小于wxID_LOWEST的标识符。