?? dialog_slidercolor.c
字號:
* _cbCallback
*/
/*
//houhh 20061018...
void AutoEndDialog(GUI_TIMER_MESSAGE* TimeMsg)
{
GUI_EndDialog(TimeMsg->Context, 1);
}
static void _cbCallback(WM_MESSAGE * pMsg) {
WM_HWIN hWin = pMsg->hWin;
static GUI_TIMER_HANDLE Timer1; //houhh 20061018...
switch (pMsg->MsgId) {
case WM_INIT_DIALOG:
Timer1 = GUI_TIMER_Create((GUI_TIMER_CALLBACK*)AutoEndDialog, 1000*4, hWin, 0); //houhh 20061018...
break;
case WM_DELETE: //houhh 20061018...
GUI_TIMER_Delete(Timer1);
break;
default:
WM_DefaultProc(pMsg);
}
}
*/
//#include "windows.h"
//houhh 20061018...
/*
void AutoEndDialog(GUI_TIMER_MESSAGE* TimeMsg)
{
// GUI_EndDialog(TimeMsg->Context, 1);
// MessageBox(NULL, "ttt", "ttttt", 0);
}
*/
static void _cbCallback(WM_MESSAGE * pMsg) {
int NCode, Id,i;
WM_HWIN hEdit0, hEdit1, hEdit2, hEdit3, hListBox, hDropd0, hDropd1;
WM_HWIN hWin = pMsg->hWin;
//static GUI_TIMER_HANDLE Timer1; //houhh 20061018...
switch (pMsg->MsgId) {
case WM_INIT_DIALOG:
/*
hEdit0 = WM_GetDialogItem(hWin, GUI_ID_EDIT0);
hEdit1 = WM_GetDialogItem(hWin, GUI_ID_EDIT1);
hEdit2 = WM_GetDialogItem(hWin, GUI_ID_EDIT2);
hEdit3 = WM_GetDialogItem(hWin, GUI_ID_EDIT3);
hListBox = WM_GetDialogItem(hWin, GUI_ID_LISTBOX0);
hDropd0 = WM_GetDialogItem(hWin, GUI_ID_DROPDOWN0);
hDropd1 = WM_GetDialogItem(hWin, GUI_ID_DROPDOWN1);
EDIT_SetText(hEdit0, "EDIT widget 0");
EDIT_SetText(hEdit1, "EDIT widget 1");
EDIT_SetTextAlign(hEdit1, GUI_TA_LEFT);
EDIT_SetHexMode(hEdit2, 0x1234, 0, 0xffffff);
EDIT_SetBinMode(hEdit3, 0x1234, 0, 0xffff);
LISTBOX_SetText(hListBox, _apListBox);
WM_DisableWindow (WM_GetDialogItem(hWin, GUI_ID_CHECK1));
CHECKBOX_Check( WM_GetDialogItem(hWin, GUI_ID_CHECK0));
CHECKBOX_Check( WM_GetDialogItem(hWin, GUI_ID_CHECK1));
SLIDER_SetWidth( WM_GetDialogItem(hWin, GUI_ID_SLIDER0), 5);
SLIDER_SetValue( WM_GetDialogItem(hWin, GUI_ID_SLIDER1), 50);
SCROLLBAR_CreateAttached(hListBox, SCROLLBAR_CF_VERTICAL);
DROPDOWN_AddString(hDropd0, "Item 0");
DROPDOWN_AddString(hDropd0, "Item 1");
DROPDOWN_AddString(hDropd0, "Item 2");
DROPDOWN_AddString(hDropd1, "Item 0");
DROPDOWN_AddString(hDropd1, "Item 1");
DROPDOWN_AddString(hDropd1, "Item 2");
DROPDOWN_AddString(hDropd1, "Item 3");
DROPDOWN_AddString(hDropd1, "Item 4");
Timer1 = GUI_TIMER_Create((GUI_TIMER_CALLBACK*)AutoEndDialog, 1000*4, hWin, 0); //houhh 20061018...
*/
for (i=0; i< 20; i++) {
int Pos = i;
int x0 = 5 + 32*(Pos%4);
int y0 = 75 + 32*(Pos/4);
//hBtn[i] = BUTTON_Create( x0, y0, 28, 28, idBtn+i,BUTTON_CF_SHOW );
hBtn[i] = WM_GetDialogItem(hWin, idBtn+i);
WM_MoveTo(hBtn[i],x0,y0);
//WM_MoveWindow(hBtn[i],28,28);
//hBtn[i] = BUTTON_CreateAsChild( x0, y0, 28, 28,hWin, idBtn+i,BUTTON_CF_SHOW );
BUTTON_SetText (hBtn[i], strBtn[i]);
hBtn[i+20] =WM_GetDialogItem(hWin, idBtn+i+20);
WM_MoveTo(hBtn[i+20],x0+130,y0);
//WM_MoveWindow(hBtn[i+20],10,10);
//hBtn[i+20] = BUTTON_Create( x0+130, y0, 28, 28, idBtn+i+20,BUTTON_CF_SHOW );
//hBtn[i+20] = BUTTON_CreateAsChild( x0+130, y0, 28, 28, hWin,idBtn+i+20,BUTTON_CF_SHOW );
BUTTON_SetText (hBtn[i+20], strBtn[i+20]);
}
//hEdit = EDIT_Create( 5, 20, 220, 75, ' ', 1024, 0 );
hEdit = EDIT_CreateAsChild( 3, 20, 220, 35,hWin, idBtn+50, WM_CF_SHOW,1024);
break;
case WM_KEY:
//MyProcess(((WM_KEY_INFO*)(pMsg->Data.p))->Key);
switch (((WM_KEY_INFO*)(pMsg->Data.p))->Key) {
case GUI_KEY_ESCAPE:
GUI_EndDialog(hWin, 1);
break;
case GUI_KEY_ENTER:
GUI_EndDialog(hWin, 0);
break;
}
break;
case WM_NOTIFY_PARENT:
Id = WM_GetId(pMsg->hWinSrc); /* Id of widget */
NCode = pMsg->Data.v; /* Notification code */
switch (NCode) {
case WM_NOTIFICATION_RELEASED: /* React only if released */
if (Id == GUI_ID_OK) { /* OK Button */
GUI_MessageBox("This text is shown\nin a message box",
"Caption/Title", GUI_MESSAGEBOX_CF_MOVEABLE);
// GUI_EndDialog(hWin, 0);
}
if (Id == GUI_ID_CANCEL) { /* Cancel Button */
GUI_EndDialog(hWin, 1);
}
MyProcess(Id);
break;
}
break;
case WM_DELETE: //houhh 20061018...
// GUI_TIMER_Delete(Timer1);
break;
default:
WM_DefaultProc(pMsg);
}
}
/*********************************************************************
*
* MainTask
*
* Demonstrates a dialog box
*
**********************************************************************
*/
void MainTask(void) {
GUI_Init();
WM_SetCallback(WM_HBKWIN, &_cbBkWindow);
WM_SetCreateFlags(WM_CF_MEMDEV); /* Use memory devices on all windows to avoid flicker */
// while (1) {
GUI_ExecDialogBox(_aDialogCreate, GUI_COUNTOF(_aDialogCreate), &_cbCallback, 0, 0, 0);
// GUI_Delay(100);
// }
}
/*********************************************************************
*
* Static data
*
**********************************************************************
*/
#include "BUTTON.h"
//#include "BUTTON_Private.h"
#include "stdio.h"
//#include "windows.h"
//extern GUI_CONST_STORAGE GUI_BITMAP bmgreenbutton;
//extern GUI_CONST_STORAGE GUI_BITMAP bmlogo;
//extern GUI_CONST_STORAGE GUI_BITMAP bmgreenbuttonlow;
const GUI_BITMAP * pBmp; //pointer to const bitmap
/*************************************************************
*
* _cbBkWin - Callback for WM_HBKWIN (entire LCD)
*/
static void _cbBkWin(WM_MESSAGE* pMsg)
{
int Id;
WM_HWIN hWin_1;
//BUTTON_Handle hBut;
// hWin_1=pMsg->MsgId;
hWin_1=pMsg->hWin; //houhh 20061019
switch (pMsg->MsgId) {
case WM_PAINT:
GUI_SetColor(GUI_WHITE);
GUI_SetBkColor(GUI_WHITE);
GUI_Clear();
GUI_DispStringAt("Hello World!", 20, 30);
// GUI_DrawBitmap(&bmlogo, 25,41);
break;
case WM_NOTIFY_PARENT:
/*if (pMsg->Data.v == WM_NOTIFICATION_RELEASED) {
Id = WM_GetId(pMsg->hWinSrc);
if (Id == GUI_ID_BUTTON0){
// GUI_EndDialog(hWin_1, 0);
char buf[255];
static int i = 0;
sprintf(buf, "%d:Hello World!", i++);
GUI_SetColor(GUI_RED);
// GUI_SetBkColor(GUI_WHITE);
WM_SelectWindow(hWin_1);
GUI_DispStringAt(buf, 20, 30);
// GUI_DispString("Hello World!");
}
}*/
break;
default:
WM_DefaultProc(pMsg);
}
}
/*********************************************************************
*
* _cbButton
*
* Purpose:
* 1. Calls the owner draw function if the WM_PAINT message has been send
* 2. Calls the original callback for further messages
* 3. After processing the messages the function evaluates the pressed-state
* if the WM_TOUCH message has been send
*/
//static void _cbButton(WM_MESSAGE *pMsg) {
// WM_HWIN hDlg;
// hDlg=pMsg->MsgId;
// if (pMsg->MsgId == WM_TOUCH) {
//
// GUI_EndDialog(hDlg, 1);}
//}
/*********************************************************************
*
* MainTask
*
**********************************************************************
*/
/*
void MainTask_FreeError(void)
{
WM_HWIN hWin_1;
BUTTON_Handle hBut;
GUI_Init();
WM_SetCreateFlags(WM_CF_MEMDEV);
WM_EnableMemdev(WM_HBKWIN);
WM_SetDesktopColor(GUI_GREEN);
{
hWin_1=WM_CreateWindow(0,0,320,240,WM_CF_SHOW, _cbBkWin, 0 );
//GUI_ExecDialogBox(_aDialogCreate, GUI_COUNTOF(_aDialogCreate), &_cbDialog, 0, 0, 0);
// pBmp = &bmgreenbutton;
// hBut = BUTTON_CreateEx(120, 170, ((U16P) pBmp->XSize), ((U16P) pBmp->YSize),
// hWin_1, WM_CF_HIDE, 0, GUI_ID_BUTTON0);
//houhh 20061019
hBut = BUTTON_CreateEx(120, 170, 80, 20,
hWin_1, WM_CF_HIDE, 0, GUI_ID_BUTTON0);
// BUTTON_SetBitmap(hBut,BUTTON_BI_UNPRESSED,&bmgreenbutton);
// BUTTON_SetBitmap(hBut,BUTTON_BI_PRESSED,&bmgreenbuttonlow);
WIDGET_SetEffect(hBut,&WIDGET_Effect_None);
BUTTON_SetFocussable(hBut,0);
WM_ShowWindow(hBut);
// WM_SetCallback(hBut, _cbButton);
// hWin_2=WM_CreateWindow(0,0,320,240,WM_CF_SHOW, 0, 0 );
// GUI_Delay(100); //houhh 20061019
}
//houhh 20061019
while (1) {
if (!GUI_Exec()) {
GUI_X_WAIT_EVENT();
}
}
}
*/
/*******************************************************************
*
* _cbWindow1
*/
static void _cbWindow1(WM_MESSAGE* pMsg) {
int x, y;
switch (pMsg->MsgId) {
case WM_PAINT:
// GUI_SetBkColor(_WindowColor1);
// GUI_Clear();
GUI_SetColor(GUI_WHITE);
GUI_SetFont(&GUI_Font24_ASCII);
x = WM_GetWindowSizeX(pMsg->hWin);
y = WM_GetWindowSizeY(pMsg->hWin);
GUI_DispStringHCenterAt("Window 1", x / 2, (y / 2) - 12);
break;
default:
WM_DefaultProc(pMsg);
}
}
void MainTask_button(void)
{
int i;
WM_HWIN Win1, Button1, Edit1;
GUI_Init();
Win1 = WM_CreateWindow(0,0,320,240,WM_CF_SHOW,NULL,0);
// Win1 = WM_CreateWindow(0,0,320,240,WM_CF_SHOW,_cbWindow1,0); //houhh 20061024...
WM_SelectWindow(Win1);
GUI_SetColor(GUI_WHITE);
GUI_SetBkColor(GUI_BLUE);
GUI_SetFont(&GUI_Font32_ASCII);
GUI_Clear();
// GUI_Delay(200);
// while(1);
Button1 = BUTTON_CreateAsChild(110,20,240,40,Win1,GUI_ID_OK,WM_CF_SHOW);
BUTTON_SetText(Button1,"ADS");
BUTTON_SetBkColor(Button1,0,GUI_YELLOW);
WM_Paint(Button1);
// while(1);
BUTTON_SetState(Button1,BUTTON_STATE_PRESSED);
for (i=0;i<3000000;i++);
BUTTON_SetBkColor(Button1,1,GUI_LIGHTRED);
WM_Paint(Button1);
// Edit1 = EDIT_Create(200,200,300,40,GUI_ID_OK,12,WM_CF_SHOW); //位置
Edit1 = EDIT_CreateAsChild(200,200,100,40,Win1,GUI_ID_OK,WM_CF_SHOW,12);
EDIT_SetText(Edit1,"1234"); //內容
EDIT_SetBkColor(Edit1,1,GUI_GREEN); //按下背色
EDIT_SetTextColor(Edit1,0,GUI_RED); //字體顏色
EDIT_SetFont(Edit1,&GUI_Font24_ASCII); //字體大小
EDIT_SetTextAlign(Edit1,GUI_TA_HCENTER|GUI_TA_VCENTER); //對齊方式
WM_Paint(Edit1);
// while(1);
while (1) {
if (!GUI_Exec())
GUI_X_ExecIdle();
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -