|
硬汉哥,参考了您的ATM例程,发现中英文切换是有窗口覆盖过后才会显示英文,我想弄成点击英文按钮它就切换为英文界面怎么弄?还有参照例程里的_CreateButton函数却实现不了按钮的创建,这是为什么?
创建按钮代码如下
static WM_HWIN _CreateButton(WM_HWIN hParent, const char* pText, int Id, int x, int y, int w, int h, unsigned TextId)
{
WM_HWIN hButton;
hButton = BUTTON_CreateEx(x, y, w, h, hParent, WM_CF_SHOW, 0, Id);
/* 获取当前创建按钮要显示的文本 */
if (TextId)
{
pText = _GetLang(TextId);
}
BUTTON_SetText (hButton, pText);
BUTTON_SetFont (hButton, FRAME_BUTTON_FONT);
BUTTON_SetBkColor (hButton, 0, FRAME_BUTTON_BKCOLOR0);
BUTTON_SetBkColor (hButton, 1, FRAME_BUTTON_BKCOLOR1);
BUTTON_SetBkColor (hButton, 2, FRAME_BUTTON_BKCOLOR2);
BUTTON_SetTextColor (hButton, 0, FRAME_BUTTON_COLOR0);
BUTTON_SetTextColor (hButton, 1, FRAME_BUTTON_COLOR1);
BUTTON_SetTextColor (hButton, 2, FRAME_BUTTON_COLOR0);
WIDGET_SetEffect (hButton, FRAME_BUTTON_EFFECT);
/* 设置接收输入焦点的能力 */
BUTTON_SetFocussable(hButton, 1);
return hButton;
}
static void _cbDialogDeleteSetPage(WM_MESSAGE * pMsg){
int NCode;
int Id;
WM_HWIN hItem = pMsg->hWin;
switch (pMsg->MsgId)
{
case WM_CREATE:
WM_SetFocus(hItem);
_CreateButton(hItem, "", GUI_ID_BUTTON0, 70, 190, 100, 40, TEXT_ID_OK);
_CreateButton(hItem, "", GUI_ID_BUTTON1, 220, 190, 100, 40, TEXT_ID_CANCEL);
break;
|
|