📄 sysalm.c
字号:
#include <string.h>
#include <asixwin.h>
#include <asixapp.h>
#include <resource\bitmap.h>
//**********************TASKDESCRIPTION*********************
DWORD SysAlarmStk[STACK_SIZE];
extern void SystemAlarm( void );
TASKDESCRIPTION SysAlarmTskDesp =
{"系统警告", ASIX_SERVICE, NOT_IN_ANYGROUP, NULL, STACK_SIZE, 1, PHY_LCD_W, PHY_LCD_H, SystemAlarm, SERVICE_PRI};
TASKDESCRIPTIONLIST SysAlarmTskDespLst =
{NULL, NULL, &SysAlarmTskDesp, SYSALMSERVER_ID, SysAlarmStk};
#define SYS_ALARM 0
void SystemAlarm( void )
{
MSG msg;
U32 mainwin;
U32 bt_ok;
U32 st;
const U16 form_w = PHY_LCD_W*2/3, form_h = PHY_LCD_H/3, form_x = PHY_LCD_W/6, form_y = ( PHY_LCD_H - form_h )/2;
const U16 st_w = form_w - 8, st_h = 30, st_x = form_x + 4, st_y = form_y + 22;
const U16 bt_w = 48, bt_h = 20, bt_x = form_x + ( form_w - bt_w )/2, bt_y = form_y + form_h - bt_h - 5;
mainwin = CreateWindow( WNDCLASS_WIN,
"系统警告",
WS_POPUPWINDOW,
form_x,form_y,
form_w,form_h,
0,
0,
NULL);
st = CreateWindow( WNDCLASS_STATIC,
"确认",
WS_CHILD | SS_TEXT | SS_MULTILINE,
st_x,st_y,
st_w,st_h,
mainwin,
0,
NULL);
bt_ok = CreateWindow( WNDCLASS_BUTTON,
"确认",
WS_CHILD | BS_REGULAR,
bt_x,bt_y,
bt_w,bt_h,
mainwin,
0,
NULL);
while( 1 )
{
ASIXGetMessage( &msg, NULL, 0, 0 );
switch( msg.message )
{
case WM_ALARM:
switch( msg.wparam )
{
case SYS_ALARM:
{
char *warning_str = (char *)msg.data;
if( warning_str != NULL )
{
SetWindowText( st, warning_str, NULL );
PopUpWindow( mainwin, 0 );
}
}
break;
}
break;
case WM_COMMAND:
if( msg.lparam == bt_ok )
{
MSG switchmsg;
switchmsg.messageType = ASIX_MESSAGE; //切换窗口
switchmsg.message = SM_SWITCH;
switchmsg.lparam = SYSALMSERVER_ID;
switchmsg.wparam = SWAP_TO_BACKGROUND;
SysSendMessage( SYSTASK_ID, &switchmsg );
}
break;
default:
break;
}
DefWindowProc(msg.message, msg.lparam, msg.data, msg.wparam);
}
}
void SendSysAlarm( char *str )
{
MSG msg;
if( str == NULL || *str == '\0' )
return;
msg.messageType = ASIX_MESSAGE;
msg.message = WM_ALARM;
msg.wparam = SYS_ALARM;
msg.data = str;
SysSendMessage( SYSALMSERVER_ID, &msg );
return;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -