#include <stdio.h>
#include "nano-X.h"
#include "nxcolors.h"
int main()
{
GR_WINDOW_ID root_wid, wid;
GR_WINDOW_ID child;
GR_WINDOW_ID sibling;
GR_GC_ID gc;
GR_COORD x, y;
GR_SIZE width, height;
GR_EVENT event;
x = 0;
y = 0;
width = 640;
height = 480;
if (GrOpen() < 0)
{
printf("Can't open graphics/n");
return 0;
}
gc = GrNewGC();
// 创建父窗口(根窗口)
root_wid = GrNewWindow(GR_ROOT_WINDOW_ID, x, y, width, height,
1, GR_COLOR_GRAY, GR_COLOR_BLACK);
// 创建一个子窗口
wid = GrNewWindow(root_wid, 150,40 , 260, 310, 1, GR_COLOR_GRAY, GR_COLOR_WHITE);
GrMapWindow(root_wid); // 绘制父窗口
child = GrNewWindow(root_wid, 180, 75, 200, 40, 1, GR_COLOR_GRAY, GR_COLOR_WHITE);
GrMapWindow(child); // 绘制子窗口
sibling = GrNewWindow(child, 0, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
sibling = GrNewWindow(child, 50, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
sibling = GrNewWindow(child, 100, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
sibling = GrNewWindow(child, 150, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
child = GrNewWindow(root_wid, 180, 125, 200, 40, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(child); // 绘制子窗口
sibling = GrNewWindow(child, 0, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
sibling = GrNewWindow(child, 50, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
sibling = GrNewWindow(child, 100, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
sibling = GrNewWindow(child, 150, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
child = GrNewWindow(root_wid, 180, 175, 200, 40, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(child); // 绘制子窗口
sibling = GrNewWindow(child, 0, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
sibling = GrNewWindow(child, 50, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
sibling = GrNewWindow(child, 100, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
sibling = GrNewWindow(child, 150, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
child = GrNewWindow(root_wid, 180, 225, 200, 40, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(child); // 绘制子窗口
sibling = GrNewWindow(child, 0, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
sibling = GrNewWindow(child, 50, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
sibling = GrNewWindow(child, 100, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
sibling = GrNewWindow(child, 150, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
child = GrNewWindow(root_wid, 180, 275, 200, 40, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(child); // 绘制子窗口
sibling = GrNewWindow(child, 0, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
sibling = GrNewWindow(child, 50, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
sibling = GrNewWindow(child, 100, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
sibling = GrNewWindow(child, 150, 0, 50, 50, 1, GR_COLOR_BLACK, GR_COLOR_WHITE);
GrMapWindow(sibling); // 绘制孙窗口
////////////////////////////
child = GrNewWindow(root_wid, 200, 360, 60, 40, 1, GR_COLOR_GRAY, GR_COLOR_WHITE);
GrMapWindow(child); // 绘制子窗口
// 显示在子窗口中的文字
GrSetGCForeground(gc, GR_COLOR_BLACK); // 前景色(字体颜色)
GrSetGCBackground(gc, GR_COLOR_GRAY); // 背景色(字体背景颜色)
GrText(child, gc, 15, 25, "Cancel", -1, GR_TFBOTTOM);
////////////////////////////
////////////////////////////
child = GrNewWindow(root_wid, 300, 360, 60, 40, 1, GR_COLOR_GRAY, GR_COLOR_WHITE);
GrMapWindow(child); // 绘制子窗口
// 显示在子窗口中的文字
GrSetGCForeground(gc, GR_COLOR_BLACK); // 前景色(字体颜色)
GrSetGCBackground(gc, GR_COLOR_GRAY); // 背景色(字体背景颜色)
GrText(child, gc, 20, 25, "OK", -1, GR_TFBOTTOM);
////////////////////////////
GrMapWindow(wid); // 绘制子窗口
// 显示在父窗口中的文字
GrSetGCForeground(gc, GR_COLOR_RED); // 前景色(字体颜色)
GrSetGCBackground(gc, GR_COLOR_GRAY); // 背景色(字体背景颜色)
GrText(root_wid, gc, 20, 20, "NET SETUP", -1, GR_TFBOTTOM);
GrText(root_wid, gc, 50, 100, "* IP ADDRESS", -1, GR_TFBOTTOM);
GrText(root_wid, gc, 50, 150, "* SUBNET", -1, GR_TFBOTTOM);
GrText(root_wid, gc, 50, 200, "* GATEWAY", -1, GR_TFBOTTOM);
GrText(root_wid, gc, 50, 250, "* DNS1", -1, GR_TFBOTTOM);
GrText(root_wid, gc, 50, 300, "* DNS2", -1, GR_TFBOTTOM);
// 显示在子窗口中的文字
// GrSetGCForeground(gc, GR_COLOR_RED); // 前景色(字体颜色)
// GrSetGCBackground(gc, GR_COLOR_GREEN); // 背景色(字体背景颜色)
// GrText(child, gc, 0, 0, "Hello in wid", -1, GR_TFBOTTOM);
for (;;)
{
GrGetNextEvent(&event);
}
GrClose();
return 1;
}
nano-X做网络设置窗口。
最新推荐文章于 2025-03-13 21:59:00 发布