资源简介

本人为公司编写的基于hi3531方案下,minigui3.0的界面编写样例,属于公司内部绝密资料,里面包含了矢量字体,滚动字幕等等的实现,对刚接触minigui编程的有很大的提升作用。不管是做ipc,nvr,会议系统等的界面的设计,都可能要用到本代码。

资源截图

代码片段和文件信息

#include  
#include  
#include   
#include 
#include  
#include  
#include  
#include  
#include   

#include “gloable.h“
#include “address.h“

float AddrBitrate;

HWND AddrEdit;

static void AddrAdd_notif_proc (HWND hDlg int id int nc DWORD add_data)
{
int pos;
//float bitrate;
    if (nc == BN_CLICKED) {
if(id == IDC_BITRATE1)
{
AddrBitrate = 1;
}
if(id == IDC_BITRATE2)
{
AddrBitrate = 1.5;
}
if(id == IDC_BITRATE3)
{
AddrBitrate = 2;
}
if(id == IDC_BITRATE4)
{
AddrBitrate = 2.5;
}
if(id == IDC_BITRATE5)
{
AddrBitrate = 3;
}
if(id == IDC_BITRATE6)
{
AddrBitrate = 4;
}
if(id == IDC_BITRATE7)
{
AddrBitrate = 5;
}
if(id == IDC_BITRATE8)
{
AddrBitrate = 6;
}
if(id == IDC_BITRATE9)
{
AddrBitrate = 8;
}
    }
}
static int AddressAddProc (HWND hDlg int message WPARAM wParam LPARAM lParam)
{
int i;
contract add;
//char *AddrString = NULL;
    switch (message) {
    case MSG_INITDIALOG:
for(i = IDC_BITRATE1; i <= IDC_BITRATE9; i++)
SetNotificationCallback (GetDlgItem (hDlg i) AddrAdd_notif_proc);
        return 1;
        
    case MSG_COMMAND:
        switch (wParam) {
 case IDC_ADDNAME:
 case IDC_ADDNO:
  break;
 case IDC_GIVEUP:
  EndDialog (hDlg wParam);
  break;
 case IDC_ADDCOMFIRM:
memset(&add0x20sizeof(contract));

  GetWindowText(GetDlgItem (hDlgIDC_ADDNAME)add.nameGetWindowTextLength(GetDlgItem (hDlgIDC_ADDNAME))); 
GetWindowText(GetDlgItem (hDlgIDC_ADDNO)add.numberGetWindowTextLength(GetDlgItem (hDlgIDC_ADDNO)));
if(strcmp(add.name““) == 0)
{
MessageBox(hDlgg_System_Message[289]g_System_Message[288]MB_OK);
}else if(strcmp(add.number““) == 0)
{
MessageBox(hDlgg_System_Message[290]g_System_Message[288]MB_OK);
}
else
{
//后续还需添加判断当前的地址名是否已经存在,如果存在则不需要添加,如果不存在,则添加进去.
FILE *fp;
fp = fopen(“/mnt/test/addrbooks.txt““a+“);
//将内容写进文件里去
sprintf(add.bitrate“%.1fM“AddrBitrate);
add.lbreak[0] = 0x0d;
add.lbreak[1] = 0x0a;
fwrite(&add1sizeof(contract)fp);
fclose(fp);
fp = NULL;
sync();
//system(“cp /mnt/test/addrbooks.txt /mnt/HTgui/“);
initAddressBook(hDlg);
  //EndDialog (hDlg wParam);
}
  break;
        case IDOK:
        case IDCANCEL:
            EndDialog (hDlg wParam);
            break;
        }
        break;

    case MSG_CLOSE:
        EndDialog (hDlg IDCANCEL);
        break;
    }
    
    return DefaultDialogProc (hDlg message wParam lParam);
}
static void initAddressAdd(HWND parent)
{
CTRLDATA CtrlAddrAdd[] =

    {
        CTRL_BUTTON
        WS_VISIBLE|BS_BITMAP
        //00720576
        GUI_Main[0][0]GUI_Main[0][1]GUI_Main[0][2]GUI_Main[0][3]
        0
        ““
        (DWORD)&Bg

评论

共有 条评论