使用常规的控件 以Button为例
首先在工程目录下的【uires】文件夹中找到【xml】文件夹 然后找到 dlg_main.xml 这个文件(可以自定义名称的,这里我是使用向导生成的)
文件修改如下:
<window pos="5,[2,-5,-5">
<text pos="|-176,|-48" offset="-0.5, -0.5">第一个UI界面</text>
<button pos="432,224" size="96,32" colorText="#000000" name="btn_test" skin="_skin.sys.btn.normal">按钮</button>
</window>
添加 button 向导中生成的好像不包括name(这个属性很重要,要加上!!!)这个属性 这里手动添加一下 name="btn_test" 在代码中添加
在MainDlg.h文件中 添加代码如下
void OnButtonTest(); //和按钮关联的事件
protected:
//soui消息
EVENT_MAP_BEGIN()
EVENT_NAME_COMMAND(L"btn_close", OnClose)
EVENT_NAME_COMMAND(L"btn_min", OnMinimize)
EVENT_NAME_COMMAND(L"btn_max", OnMaximize)
EVENT_NAME_COMMAND(L"btn_restore", OnRestore)
EVENT_NAME_COMMAND(L"btn_test",OnButtonTest) //添加的消息事件
EVENT_MAP_END()
在MainDlg.cpp中实现功能就好了
void CMainDlg::OnButtonTest()
{
int keyMsg = MessageBox(NULL, L"我是一个常规的按钮", L"标题", MB_YESNO);
if (IDYES == keyMsg)
MessageBox(NULL, L"你点击了YES按钮", L"标题", MB_OK);
else if (IDNO == keyMsg)
MessageBox(NULL, L"你点击了No按钮", L"标题", MB_OK);
else
MessageBox(NULL, L"你点击了X", L"标题", MB_OK);
}
这样一个按钮和函数就关联起来了 可以进行相应的操作
使用SOUI的XML配置文件小结:
uires.idx:资源结构文件(包括工程所有使用资源的路径)
组成标签页 name path 两个值组成
例子:
<UIDEF>
<file name="xml_init" path="uidef\init.xml" />
</UIDEF>
剩下的文件后面分析
SOUI在GitHub上的下载地址:点击打开链接