⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 win_queryresult.c

📁 这是一个linux下基于MiniGUI的手机界面设计源码
💻 C
字号:
/*win_queryResult.c*//***	COMPANY NAME:	国星**	FILE    NAME:	win_queryResult.c**	FILE	PATH:	Interface/win_queryResult.c**	WINDOWS NAME:	收件箱**	WINDOWS PATH:	通信 / 收件箱 **	OTHER INFORMATION;	无**	CREATER	NAME:	LiWencheng,JiangYuanqing**	MENDER	NAME:	LiWencheng,JiangYuanqing**	CHANGE  TIME:	11/14/2007 */#include "sysSrcInfo.h"#define SIID_CHECK_INBOX	153static int sel;static int rowCount=0;static HWND editCodeType;static BITMAP bmp_queryResult;static int flagqueryResult=0;//static HWND hIV_menu_queryResult;//menustatic BITMAP icon_bitmap_queryResult[3];static void init_child_queryResult();static void init_menu_queryResult(HWND hwnd);static IVITEMINFO *piviiChild;static IVITEMINFO *piviiMenu;/* 位图数组 */static const char *icon_files_queryResult[3] ={	"Pictures/b_notread_0.png",	"Pictures/b_lock_0.png",	"Pictures/b_typenull_0.png" };const char *bmp_name_queryResult[] = {	"./Pictures/b_windowsbackground_1.PNG",			//第一张来做主界面	"./Pictures/OK.PNG",					"./Pictures/b_cancel_0.PNG"	,			"./Pictures/return.PNG",				"./Pictures/c_check.PNG"		};const char *icon_labels_queryResult[] = {	"1 查看",    	"2 回复",    	"3 锁定",    	"4 转发",     	"5 删除",     	"6 全部删除",  	"7 保存地址",   	"0 回主界面"  };/* 定义皮肤元素数组 */static skin_item_t skin_items_queryResult [] ={{SIID_OK,            SI_TYPE_CHKBUTTON   | SI_TEST_SHAPE_RECT | SI_STATUS_VISIBLE,     BUTTONLEFT_X,   BUTTON_Y, {},   1 ,"" },{SIID_CANCEL,        SI_TYPE_CHKBUTTON   | SI_TEST_SHAPE_RECT | SI_STATUS_VISIBLE,     BUTTONRIGHT_X,  BUTTON_Y, {},   2, "" },{SIID_RETURN,        SI_TYPE_CHKBUTTON   | SI_TEST_SHAPE_RECT | SI_STATUS_VISIBLE,     BUTTONRIGHT_X,  BUTTON_Y, {},   3, "" },{SIID_CHECK_INBOX,   SI_TYPE_CHKBUTTON   | SI_TEST_SHAPE_RECT | SI_STATUS_VISIBLE,     BUTTONLEFT_X,   BUTTON_Y, {},   4, "" },};/* 定义皮肤 */static skin_head_t skin_queryResult ={    "skin_queryResult",  //const BITMAP* bmps;    SKIN_STYLE_TOOLTIP, NULL, NULL,     0, 4, skin_items_queryResult, FALSE /** The number of the items in this skin. */  /* 定义皮肤元素数组 */};static void ShowReturnPic_queryResult( int true){	int false;	if(true==TRUE){false=FALSE;}else{false=TRUE;}	skin_enable_item (&skin_queryResult,SIID_CANCEL,false);       skin_show_item (&skin_queryResult,SIID_CANCEL,false);	skin_enable_item (&skin_queryResult,SIID_RETURN,true);       skin_show_item (&skin_queryResult,SIID_RETURN,true);	skin_enable_item (&skin_queryResult,SIID_OK,false);       skin_show_item (&skin_queryResult,SIID_OK,false);	skin_enable_item (&skin_queryResult,SIID_CHECK_INBOX,true);       skin_show_item (&skin_queryResult,SIID_CHECK_INBOX,true);}static void myDrawItem (HWND hWnd, GHANDLE hsvi, HDC hdc, RECT *rcDraw){    	const PBITMAP pbmp = (PBITMAP)iconview_get_item_bitmap (hsvi);    	const char *label = (const char*)iconview_get_item_label (hsvi);    	SetBkMode (hdc, BM_TRANSPARENT);    	SetTextColor (hdc, PIXEL_black);    	if (iconview_is_item_hilight(hWnd, hsvi))        	SetBrushColor (hdc, PIXEL_blue);    	else         	SetBrushColor (hdc, PIXEL_lightwhite);        	FillBox (hdc, rcDraw->left, rcDraw->top, RECTWP(rcDraw), RECTHP(rcDraw));//select state    	SetBkColor (hdc, PIXEL_red);	if (label)	{		RECT rcTxt = *rcDraw;        	rcTxt.top = rcTxt.bottom - (GetWindowFont (hWnd)->size) *1.1;        	rcTxt.left = rcTxt.left - (GetWindowFont (hWnd)->size) + 18;        	DrawText (hdc, label, -1, &rcTxt, DT_SINGLELINE | DT_CENTER | DT_VCENTER);    	}    	FillBoxWithBitmap (hdc, rcDraw->left, rcDraw->top, 0, 0, pbmp);//fill pic}static void ClickCancel_queryResult(){	ShowReturnPic_queryResult( TRUE);	SendMessage ( hIV_menu_queryResult, WS_DISABLED,0,0);                     EnableWindow (  hIV_menu_queryResult, FALSE);                     SendMessage ( hIV_menu_queryResult,  WS_DISABLED,0,0);                     ShowWindow ( hIV_menu_queryResult, SW_HIDE);      ShowWindow ( hIV_child_queryResult, SW_SHOW);                  	EnableWindow ( hIV_child_queryResult,TRUE);                  	SetFocusChild(  hIV_child_queryResult );		   	SendMessage(hIV_child_queryResult,IVM_SELECTITEM,0,0);                	SendMessage(hIV_child_queryResult,IVM_SETCURSEL,0,0);			flagqueryResult=0;			InvalidateRect (hWndMain_queryResult, NULL,TRUE);//re1draw }static int CloseWindow_queryResult()//must change{		int i;				ShowWindow ( hIV_menu_queryResult, SW_HIDE);		ShowWindow ( hIV_child_queryResult, SW_HIDE);		ShowWindow ( hWndMain_queryResult, SW_HIDE);        	LoadSkinBmps( &skin_queryResult, FALSE ,bmp_name_queryResult ,					(sizeof (bmp_name_queryResult))/sizeof(char *) );		for(i=0;i<3;i++)		{			UnloadBitmap( &(icon_bitmap_queryResult[i]) );		}  		UnloadBitmap(  &bmp_queryResult );		return 1;}static void DeleteIconItem(int sel){	     sel = SendMessage ( hIV_child_queryResult, IVM_GETCURSEL, 0, 0 );            int count = SendMessage (hIV_child_queryResult, IVM_GETITEMCOUNT, 0, 0);            char *label = NULL;            if (sel >= 0){                label = (char *) SendMessage (hIV_child_queryResult, IVM_GETITEMADDDATA, sel, 0);                if (label && strlen (label))                   printf ("delelete item:%s\n", label);                SendMessage (hIV_child_queryResult, IVM_DELITEM, sel, 0);                if (sel == count - 1)                    sel --;                SendMessage (hIV_child_queryResult, IVM_SETCURSEL, sel, 1);            }}static void FU_notif_proc_child_Inbox(HWND hwnd ,int id, int nc, DWORD add_data){ 	int count = SendMessage (hIV_child_queryResult, IVM_GETITEMCOUNT, 0, 0);	sel = SendMessage ( hIV_child_queryResult, IVM_GETCURSEL, 0, 0 );        if( nc==LVN_SELCHANGE )         {              // SetCodeType (editCodeType , inBox[sel].codeType );               InvalidateRect ( hWndMain_queryResult, NULL,TRUE);                      }}static int main_event_cb_queryResult (HWND hwnd, skin_item_t* item, int event, void* data){    if (event == SIE_BUTTON_CLICKED) {    sel = SendMessage ( hIV_child_queryResult, IVM_GETCURSEL, 0, 0 );    switch (item->id) {  //按的那个图片	      case SIID_CHECK_INBOX:      		if (rowCount >0)      		{			switch(currSelectResult)			{			case BY_NEWINPUT:				win_InfoLook ( hWndMain , sel , 5);			break;						case BY_SENDID:				win_InfoLook ( hWndMain , sel , 3);			break;			case BY_FEEDBACK:				win_InfoLook ( hWndMain , sel , 4);			break;			}			CloseWindow_queryResult();		}      break;      case SIID_RETURN://return				switch(currSelectResult)		{			case BY_NEWINPUT:												break;						case BY_SENDID:												break;			case BY_FEEDBACK:							UnloadData( INBOX, TYPE_OF_FKXX);				break;		}		win_InfoQuery(hWndMain );					CloseWindow_queryResult();            break;        }     }    return 1;}static void init_child_queryResult(){	char a[15];	char b[11];	int i,j;	IVITEMINFO ivii;			rowCount = loadedMesg.countOfMesg;		switch (currSelectResult)	{	case BY_NEWINPUT:		case BY_SENDID:		for (i = 0; i <  rowCount; i++) 		{            		memset (&ivii, 0, sizeof(IVITEMINFO));                 			if( (*(loadedMesg.pCommInfo+i))->txIndex.lockSymbol==0)			{ ivii.bmp = &icon_bitmap_queryResult[0]; }//未读图片0			else if((*(loadedMesg.pCommInfo+i))->txIndex.lockSymbol==1)			{ ivii.bmp = &icon_bitmap_queryResult[1];}//锁定图片1			else{ ivii.bmp = &icon_bitmap_queryResult[2];}//无图片2			            ivii.nItem =  i;            ivii.label= (*(loadedMesg.pCommInfo+i))->txIndex.message;            SendMessage (hIV_child_queryResult, IVM_ADDITEM, 0, (LPARAM)&ivii);        }		break;					case BY_FEEDBACK:				for (i = 0; i <  rowCount; i++) 		{                   memset (&ivii, 0, sizeof(IVITEMINFO));					ivii.bmp = NULL;		                   ivii.nItem =  i;                   ivii.label= (loadedMesg.fkInfo+i)->fkxx.AdditionalINfor;                   SendMessage (hIV_child_queryResult, IVM_ADDITEM, 0, (LPARAM)&ivii);        	}                			break; 	}	SendMessage(hIV_child_queryResult,IVM_SELECTITEM,0,0);	SendMessage(hIV_child_queryResult,IVM_SETCURSEL,0,0);}static int msg_event_cb_queryResult (HWND hwnd, int message, WPARAM wparam, LPARAM lparam, int* result){	HDC hdc;	IVITEMINFO ivii;	char buff[30];	char buffTime[20];    int j,i,k;        switch (message) {        	case MSG_CREATE:				LoadBitmap (HDC_SCREEN, &bmp_queryResult, "./Pictures/a_information_1.PNG");				ShowReturnPic_queryResult ( TRUE);							for (j=0; j<TABLESIZE(icon_files_queryResult);j++) {//加图片							LoadBitmap (HDC_SCREEN,&icon_bitmap_queryResult[j],icon_files_queryResult[j]);				}				hIV_child_queryResult = CreateChildWindow_INFO (hwnd,0,17,160 ,120,1065);				SetNotificationCallback( hIV_child_queryResult ,FU_notif_proc_child_Inbox   );//回调						init_child_queryResult ();							InvalidateRect (hwnd, NULL, TRUE);	        break;	  case MSG_PAINT :		  hdc=BeginPaint (hwnd);  				SetBkMode (hdc, BM_TRANSPARENT); 		  		FillBoxWithBitmap (hdc, ZTL_PIC_X,ZTL_PIC_Y, ZTL_PIC_W,ZTL_PIC_H, &bmp_queryResult);				TextOut (hdc, WZ_ZTL_X3, WZ_ZTL_Y, "qResu" );							switch(currSelectResult)			{			case BY_NEWINPUT:			case BY_SENDID:							//sprintf(buff, "[%d/%d]",loadedMesg.countOfUnread, loadedMesg.countOfMesg );				                       	//TextOut (hdc, 80, 2, buff);                       	if(rowCount != 0)                          	{                          	sprintf (buff ,"Sender:%ld", (*(loadedMesg.pCommInfo+sel))->txIndex.srcID);//sendNo  	                  		TextOut (hdc,RJ_X,138,buff);					sprintf (buffTime,"%d-%d-%d %d:%d",						currTime.year,currTime.mon,currTime.mday,						(*(loadedMesg.pCommInfo+sel))->txIndex.hour,						(*(loadedMesg.pCommInfo+sel))->txIndex.minute);			                          	sprintf (buff ,"时间:%s", buffTime); //time                          	TextOut (hdc,RJ_X,154,buff);	                          	}                          				break;			case BY_FEEDBACK:				if(rowCount != 0)                          	{                          	sprintf (buff ,"发方:%ld", 						(loadedMesg.fkInfo+sel)->fkxx.srcID);//sendNo  	                  		TextOut (hdc,RJ_X,138,buff);				}			break;			}                EndPaint (hwnd,hdc); 	      break;    }    return 1;}int win_queryResult(HWND hwnd ){    	MSG msg;		LoadSkinBmps( &skin_queryResult, TRUE ,bmp_name_queryResult ,(sizeof (bmp_name_queryResult))/sizeof(char *) );        if (skin_queryResult.bmps == NULL) {      	  	printf ("Could not load skin bitmaps!\n");      	  	return 0;        }		if ( !skin_init (&skin_queryResult, main_event_cb_queryResult, msg_event_cb_queryResult) ){    /* 初始化皮肤 */        	printf ("skin init fail!\n\n");        	return 0;    	}    	else{ 			hWndMain_queryResult=  create_skin_control (&skin_queryResult, hwnd,143, DEF_X_, DEF_Y_,                               DEF_WIDTH, DEF_HEIGHT);                            		SetFocusChild(hIV_child_queryResult);			currShowWindowHwnd = hWndMain_queryResult;             return 1;         }       }#ifndef _LITE_VERSION#include <minigui/dti.c>#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -