主页 / 库函数目录 / 绘图环境 / setinitmode
功能:
设置图形环境的初始化模式以及窗口位置。
声明:
void setinitmode(int mode, int x = CW_USEDEFAULT, int y = CW_USEDEFAULT);
参数:
mode
初始化模式,每个二进制位控制是否启用某种模式(值为 0 表示仅使用普通窗口,不启用额外的模式)
可以由以下模式进行组合:
初始化模式 | 值 | 说明 |
INIT_DEFAULT | 0x0 | 普通窗口 |
INIT_NOBORDER | 0x1 | 无边框窗口 |
INIT_CHILD | 0x2 | 子窗口,需配合 attachHWND() 函数 |
INIT_TOPMOST | 0x4 | 顶层窗口(不会被其它窗口遮挡) |
INIT_RENDERMANUAL | 0x8 | 手动渲染模式 |
INIT_NOFORCEEXIT | 0x10 | 退出时不强制结束程序,而是设置标志位,可由 is_run() 判断 当设置了 INIT_NOFORCEEXIT 模式后,用户进行关闭窗口操作时窗口不会关闭,程序也不会退出,此时 is_run() 返回 false。 同时 getch(), getmouse() 之类的阻塞性函数将不再阻塞,由于窗口没有主动关闭,所以后续需要在代码中自行做窗口关闭和程序退出的相关处理。 |
INIT_UNICODE (20.08 起) | 0x20 | 窗口使用 Unicode 字符集 |
INIT_HIDE (24.04) | 0x40 | 窗口创建后隐藏不可见(便于在窗口首次显示时为画面内容做准备) |
INIT_WITHLOGO | 0x100 | 带 EGE logo 出场动画 |
设定的组合模式:
组合模式 | 说明 |
INIT_ANIMATION | INIT_RENDERMANUAL 与 INIT_NOFORCEEXIT 模式的组合,用于动画 |
x, y
初始化后,窗口左上角在屏幕上的坐标,默认为系统分配。
返回值:
(无)
说明:
本函数只在 initgraph() 前调用有效。
示例:
setinimode(0, 100, 50); //左上角在屏幕坐标(100, 50)处的普通窗口