?? wordclock.c~
字號:
case _ID_TIMER_CAIRO : SetDlgItemText (hWnd, _ID_TIME_STATIC, mk_time_Cairo (buff)); break; case _ID_TIMER_SYDNEY : SetDlgItemText (hWnd, _ID_TIME_STATIC, mk_time_Sydney (buff)); break; case _ID_TIMER_BRAZILIA : SetDlgItemText (hWnd, _ID_TIME_STATIC, mk_time_Brazilia (buff)); break; default : break; } break; } case MSG_PAINT: hdc = BeginPaint (hWnd); Beijing_Bmp (hdc); Beijing_Text (hdc); time_bakcolor_Beijing (hdc); Rectangle (hdc, 0, 0, 640, 480); EndPaint (hWnd, hdc); return 0;
case MSG_CLOSE: KillTimer (hWnd, _ID_TIMER_BEIJING); DestroyAllControls (hWnd); UnloadBitmap (&bmp);
DestroyMainWindow(hWnd);
PostQuitMessage(hWnd);
break;
case MSG_COMMAND:
switch(wParam)
{ case IDM_Beijing: hdc = GetClientDC(hWnd); SetBrushColor (hdc, PIXEL_darkgreen); FillBox(hdc, 0, 0, 640, 480); //KillTimer (hWnd, _ID_TIMER_BEIJING); //銷毀不用的定時器 KillTimer (hWnd, _ID_TIMER_TOKYO); KillTimer (hWnd, _ID_TIMER_NEWYORK); KillTimer (hWnd, _ID_TIMER_ROME); KillTimer (hWnd, _ID_TIMER_BERLIN); KillTimer (hWnd, _ID_TIMER_PARIS); KillTimer (hWnd, _ID_TIMER_LONDON); KillTimer (hWnd, _ID_TIMER_CAIRO); KillTimer (hWnd, _ID_TIMER_SYDNEY); KillTimer (hWnd, _ID_TIMER_BRAZILIA); time_bakcolor_Beijing (hdc); SetTimer (hWnd, _ID_TIMER_BEIJING, 100); SetDlgItemText (hWnd, _ID_DATE_STATIC, "2009年4月18日"); Beijing_Bmp (hdc); Beijing_Text (hdc); ReleaseDC (hdc); break; case IDM_Tokyo: hdc = GetClientDC(hWnd); SetBrushColor (hdc, PIXEL_darkgreen); FillBox(hdc, 0, 0, 640, 480); KillTimer (hWnd, _ID_TIMER_BEIJING); //銷毀不用的定時器 //KillTimer (hWnd, _ID_TIMER_TOKYO); KillTimer (hWnd, _ID_TIMER_NEWYORK); KillTimer (hWnd, _ID_TIMER_ROME); KillTimer (hWnd, _ID_TIMER_BERLIN); KillTimer (hWnd, _ID_TIMER_PARIS); KillTimer (hWnd, _ID_TIMER_LONDON); KillTimer (hWnd, _ID_TIMER_CAIRO); KillTimer (hWnd, _ID_TIMER_SYDNEY); KillTimer (hWnd, _ID_TIMER_BRAZILIA); time_bakcolor_Tokyo (hdc); SetTimer (hWnd, _ID_TIMER_TOKYO, 100); Tokyo_Bmp (hdc); Tokyo_Text (hdc); ReleaseDC (hdc); break; case IDM_Newyork: hdc = GetClientDC(hWnd); SetBrushColor (hdc, PIXEL_darkgreen); FillBox(hdc, 0, 0, 640, 480); KillTimer (hWnd, _ID_TIMER_BEIJING); //銷毀不用的定時器 KillTimer (hWnd, _ID_TIMER_TOKYO); //KillTimer (hWnd, _ID_TIMER_NEWYORK); KillTimer (hWnd, _ID_TIMER_ROME); KillTimer (hWnd, _ID_TIMER_BERLIN); KillTimer (hWnd, _ID_TIMER_PARIS); KillTimer (hWnd, _ID_TIMER_LONDON); KillTimer (hWnd, _ID_TIMER_CAIRO); KillTimer (hWnd, _ID_TIMER_SYDNEY); KillTimer (hWnd, _ID_TIMER_BRAZILIA); time_bakcolor_Newyork (hdc); SetTimer (hWnd, _ID_TIMER_NEWYORK, 100); Newyork_Bmp (hdc); Newyork_Text(hdc); ReleaseDC (hdc); break; case IDM_Rome: hdc = GetClientDC(hWnd); SetBrushColor (hdc, PIXEL_darkgreen); FillBox(hdc, 0, 0, 640, 480); KillTimer (hWnd, _ID_TIMER_BEIJING); //銷毀不用的定時器 KillTimer (hWnd, _ID_TIMER_TOKYO); KillTimer (hWnd, _ID_TIMER_NEWYORK); //KillTimer (hWnd, _ID_TIMER_ROME); KillTimer (hWnd, _ID_TIMER_BERLIN); KillTimer (hWnd, _ID_TIMER_PARIS); KillTimer (hWnd, _ID_TIMER_LONDON); KillTimer (hWnd, _ID_TIMER_CAIRO); KillTimer (hWnd, _ID_TIMER_SYDNEY); KillTimer (hWnd, _ID_TIMER_BRAZILIA); time_bakcolor_Rome (hdc); SetTimer (hWnd, _ID_TIMER_ROME, 100); Rome_Bmp (hdc); Rome_Text (hdc); ReleaseDC (hdc); break; case IDM_Berlin: hdc = GetClientDC(hWnd); SetBrushColor (hdc, PIXEL_darkgreen); FillBox(hdc, 0, 0, 640, 480); KillTimer (hWnd, _ID_TIMER_BEIJING); //銷毀不用的定時器 KillTimer (hWnd, _ID_TIMER_TOKYO); KillTimer (hWnd, _ID_TIMER_NEWYORK); KillTimer (hWnd, _ID_TIMER_ROME); //KillTimer (hWnd, _ID_TIMER_BERLIN); KillTimer (hWnd, _ID_TIMER_PARIS); KillTimer (hWnd, _ID_TIMER_LONDON); KillTimer (hWnd, _ID_TIMER_CAIRO); KillTimer (hWnd, _ID_TIMER_SYDNEY); KillTimer (hWnd, _ID_TIMER_BRAZILIA); time_bakcolor_Berlin (hdc); SetTimer (hWnd, _ID_TIMER_BERLIN, 100); Berlin_Bmp (hdc); Berlin_Text (hdc); ReleaseDC (hdc); break; case IDM_Paris: hdc = GetClientDC(hWnd); SetBrushColor (hdc, PIXEL_darkgreen); FillBox(hdc, 0, 0, 640, 480); KillTimer (hWnd, _ID_TIMER_BEIJING); //銷毀不用的定時器 KillTimer (hWnd, _ID_TIMER_TOKYO); KillTimer (hWnd, _ID_TIMER_NEWYORK); KillTimer (hWnd, _ID_TIMER_ROME); KillTimer (hWnd, _ID_TIMER_BERLIN); //KillTimer (hWnd, _ID_TIMER_PARIS); KillTimer (hWnd, _ID_TIMER_LONDON); KillTimer (hWnd, _ID_TIMER_CAIRO); KillTimer (hWnd, _ID_TIMER_SYDNEY); KillTimer (hWnd, _ID_TIMER_BRAZILIA); time_bakcolor_Paris (hdc); SetTimer (hWnd, _ID_TIMER_PARIS, 100); Paris_Bmp (hdc); Paris_Text (hdc); ReleaseDC (hdc); break; case IDM_London: hdc = GetClientDC(hWnd); SetBrushColor (hdc, PIXEL_darkgreen); FillBox(hdc, 0, 0, 640, 480); KillTimer (hWnd, _ID_TIMER_BEIJING); //銷毀不用的定時器 KillTimer (hWnd, _ID_TIMER_TOKYO); KillTimer (hWnd, _ID_TIMER_NEWYORK); KillTimer (hWnd, _ID_TIMER_ROME); KillTimer (hWnd, _ID_TIMER_BERLIN); KillTimer (hWnd, _ID_TIMER_PARIS); //KillTimer (hWnd, _ID_TIMER_LONDON); KillTimer (hWnd, _ID_TIMER_CAIRO); KillTimer (hWnd, _ID_TIMER_SYDNEY); KillTimer (hWnd, _ID_TIMER_BRAZILIA); time_bakcolor_London (hdc); SetTimer (hWnd, _ID_TIMER_LONDON, 100); London_Bmp (hdc); London_Text (hdc); ReleaseDC (hdc); break; case IDM_Cairo: hdc = GetClientDC(hWnd); SetBrushColor (hdc, PIXEL_darkgreen); FillBox(hdc, 0, 0, 640, 480); KillTimer (hWnd, _ID_TIMER_BEIJING); //銷毀不用的定時器 KillTimer (hWnd, _ID_TIMER_TOKYO); KillTimer (hWnd, _ID_TIMER_NEWYORK); KillTimer (hWnd, _ID_TIMER_ROME); KillTimer (hWnd, _ID_TIMER_BERLIN); KillTimer (hWnd, _ID_TIMER_PARIS); KillTimer (hWnd, _ID_TIMER_LONDON); //KillTimer (hWnd, _ID_TIMER_CAIRO); KillTimer (hWnd, _ID_TIMER_SYDNEY); KillTimer (hWnd, _ID_TIMER_BRAZILIA); time_bakcolor_Cairo (hdc); SetTimer (hWnd, _ID_TIMER_CAIRO, 100); Cairo_Bmp (hdc); Cairo_Text (hdc); ReleaseDC (hdc); break; case IDM_Sydney: hdc = GetClientDC(hWnd); SetBrushColor (hdc, PIXEL_darkgreen); FillBox(hdc, 0, 0, 640, 480); KillTimer (hWnd, _ID_TIMER_BEIJING); //銷毀不用的定時器 KillTimer (hWnd, _ID_TIMER_TOKYO); KillTimer (hWnd, _ID_TIMER_NEWYORK); KillTimer (hWnd, _ID_TIMER_ROME); KillTimer (hWnd, _ID_TIMER_BERLIN); KillTimer (hWnd, _ID_TIMER_PARIS); KillTimer (hWnd, _ID_TIMER_LONDON); KillTimer (hWnd, _ID_TIMER_CAIRO); //KillTimer (hWnd, _ID_TIMER_SYDNEY); KillTimer (hWnd, _ID_TIMER_BRAZILIA); time_bakcolor_Sydney (hdc); SetTimer (hWnd, _ID_TIMER_SYDNEY, 100); Sydney_Bmp (hdc); Sydney_Text (hdc); ReleaseDC (hdc); break; case IDM_Brazilia: hdc = GetClientDC(hWnd); SetBrushColor (hdc, PIXEL_darkgreen); FillBox(hdc, 0, 0, 640, 480); KillTimer (hWnd, _ID_TIMER_BEIJING); //銷毀不用的定時器 KillTimer (hWnd, _ID_TIMER_TOKYO); KillTimer (hWnd, _ID_TIMER_NEWYORK); KillTimer (hWnd, _ID_TIMER_ROME); KillTimer (hWnd, _ID_TIMER_BERLIN); KillTimer (hWnd, _ID_TIMER_PARIS); KillTimer (hWnd, _ID_TIMER_LONDON); KillTimer (hWnd, _ID_TIMER_CAIRO); KillTimer (hWnd, _ID_TIMER_SYDNEY); //KillTimer (hWnd, _ID_TIMER_BRAZILIA); time_bakcolor_Brazilia (hdc); SetTimer (hWnd, _ID_TIMER_BRAZILIA, 100); Brazilia_Bmp (hdc); Brazilia_Text (hdc); ReleaseDC (hdc); break; // case IDM_EXIT:
// DestroyMainWindow(hWnd);
// PostQuitMessage(hWnd);
// break;
}
break;
default:
return(DefaultMainWinProc(hWnd, message, wParam, lParam)); // 進(jìn) 行 缺 省 的 消 息 處 理
}
return(0);
}int MiniGUIMain (int argc, const char* argv[]){ MSG Msg; HWND hMainWnd; MAINWINCREATE CreateInfo;#ifdef _MGRM_PROCESSES JoinLayer(NAME_DEF_LAYER , "Word Clock" , 0 , 0); /*在 MiniGUI-Processes 運(yùn) 行 模 式 下 , 每 個 MiniGUI客 戶 端 程 序 在 調(diào) 用 其 它MiniGUI 函數(shù)之前必須調(diào)用該函數(shù)將自己添加到一個層中(或創(chuàng)建一個新層)*/#endif CreateInfo.dwStyle = WS_VISIBLE | WS_BORDER | WS_CAPTION;//設(shè)置主窗口風(fēng)格 CreateInfo.dwExStyle = WS_EX_NONE | WS_EX_IMECOMPOSE; //設(shè)置主窗口的擴(kuò)展風(fēng)格 CreateInfo.spCaption = " Word Clock";//主窗口的標(biāo)題 CreateInfo.hMenu = CreateMainMenu(); //設(shè)置主窗口的主菜單 CreateInfo.hCursor = GetSystemCursor(0); //設(shè)置主窗口的光標(biāo)為系統(tǒng)缺省光標(biāo) CreateInfo.hIcon = 0; //設(shè)置主窗口的圖標(biāo) CreateInfo.MainWindowProc = WordclockWinProc; //設(shè)置主窗口的窗口過程函數(shù) CreateInfo.lx = 0; CreateInfo.ty = 0; CreateInfo.rx = 640; CreateInfo.by = 480; CreateInfo.iBkColor = COLOR_darkgreen; CreateInfo.dwAddData = 0; CreateInfo.hHosting = HWND_DESKTOP; hMainWnd = CreateMainWindow (&CreateInfo); if (hMainWnd == HWND_INVALID) return -1; ShowWindow(hMainWnd, SW_SHOWNORMAL); while (GetMessage(&Msg, hMainWnd)) { TranslateMessage(&Msg); DispatchMessage(&Msg); } MainWindowThreadCleanup (hMainWnd); return 0;}#ifndef _MGRM_PROCESSES#include <minigui/dti.c>#endif
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -