📄 list.c
字号:
#include"comm.h"
#include <minigui/dti.c>
#define IDC_LISTBOX1 1000
#define IDC_LISTBOX2 1001
#define IDC_BUTTON 102
#define IDC_BUTTON1 103
#define IDC_BUTTON2 104
#define IDC_BUTTON3 105
static int CreateWinProc(HWND hWnd, int message, WPARAM wParam, LPARAM lParam)
{
LISTBOXITEMINFO lbii;
switch (message) {
case MSG_CREATE:
CreateWindow (CTRL_LISTBOX,
"",
WS_VISIBLE | LBS_NOTIFY|WS_BORDER|WS_VSCROLL|LBS_USEICON|LBS_CHECKBOX|LBS_AUTOCHECK,
IDC_LISTBOX1,
10, 20, 100, 160,
hWnd,
0);
CreateWindow (CTRL_LISTBOX,
"",
WS_VISIBLE | LBS_NOTIFY|WS_BORDER|WS_VSCROLL,
IDC_LISTBOX2,
115, 20, 100, 160,
hWnd,
0);
CreateWindow (CTRL_BUTTON,
"拨号",
WS_VISIBLE |WS_BORDER,
IDC_BUTTON1,
210, 20, 80, 30,
hWnd,
0);
CreateWindow (CTRL_BUTTON,
"添加",
WS_VISIBLE |WS_BORDER,
IDC_BUTTON2,
210, 80, 80, 30,
hWnd,
0);
CreateWindow (CTRL_BUTTON,
"删除",
WS_VISIBLE |WS_BORDER,
IDC_BUTTON3,
210, 140, 80, 30,
hWnd,
0);
LoadData(hWnd,IDC_LISTBOX1,IDC_LISTBOX2);//读数据库
break;
case MSG_COMMAND:
switch(wParam)
{
case IDC_BUTTON1: //拨号按钮
{
char telnumber[20];
char name[20];
int index=-1;
index = SendMessage(GetDlgItem(hWnd,IDC_LISTBOX1), LB_GETCURSEL, 0, 0);
SendMessage(GetDlgItem(hWnd,IDC_LISTBOX1), LB_GETTEXT, index, (LPARAM)name);
SendMessage(GetDlgItem(hWnd,IDC_LISTBOX2), LB_GETTEXT, index, (LPARAM)telnumber);
gprs_call(telnumber,strlen(telnumber));//打电话
callWindow(name,telnumber);
}
break;
case IDC_BUTTON2://添加按钮
{
insert();
lbii.hIcon=(DWORD)&bmp;//bmp定义在comm.h里 设置为全局变量
lbii.cmFlag=IMGFLAG_BITMAP;
if((strlen(name)!=0)&&(strlen(tel)!=0))//当姓名和电话号不为空时
{ lbii.string=name;
SendMessage(GetDlgItem(hWnd,IDC_LISTBOX1),LB_ADDSTRING,0,(LPARAM)&lbii);
SendMessage(GetDlgItem(hWnd,IDC_LISTBOX2),LB_ADDSTRING,0,(LPARAM)tel);
}
}
break;
case IDC_BUTTON3://删除按钮
{
char telnumber[20];
char name[20];
int index=-1;
index = SendMessage(GetDlgItem(hWnd,IDC_LISTBOX1), LB_GETCURSEL, 0, 0);
SendMessage(GetDlgItem(hWnd,IDC_LISTBOX1), LB_GETTEXT, index, (LPARAM)name);
SendMessage(GetDlgItem(hWnd,IDC_LISTBOX2), LB_GETTEXT, index, (LPARAM)telnumber);
delWindow(hWnd,name,telnumber,index,IDC_LISTBOX1,IDC_LISTBOX2);
}
break;
}
break;
case MSG_PAINT:
{
HDC hdc;
hdc = BeginPaint(hWnd);
SetBkColor(hdc,PIXEL_yellow);
SetTextColor(hdc,PIXEL_red);
TextOut(hdc,10,0,"姓名:");
TextOut(hdc,145,0,"电话:");
EndPaint(hWnd,hdc);
}
break;
case MSG_CLOSE:
UnloadBitmap (&bmp);
DestroyMainWindow (hWnd);
PostQuitMessage (hWnd);
return 0;
}
return DefaultMainWinProc(hWnd, message, wParam, lParam);
}
int list()
{
MSG Msg;
HWND hMainWnd;
MAINWINCREATE CreateInfo;
pthread_t th_b;
CreateInfo.dwStyle = WS_VISIBLE | WS_BORDER | WS_CAPTION;
CreateInfo.dwExStyle = WS_EX_NONE;
CreateInfo.spCaption = "电话本";
CreateInfo.hMenu = 0;
CreateInfo.hCursor = GetSystemCursor(0);
CreateInfo.hIcon = 0;
CreateInfo.MainWindowProc = CreateWinProc;
CreateInfo.lx = 0;
CreateInfo.ty = 0;
CreateInfo.rx = 320;
CreateInfo.by = 240;
CreateInfo.iBkColor = COLOR_black;
CreateInfo.dwAddData = 0;
CreateInfo.hHosting = HWND_DESKTOP;
if (LoadBitmap (HDC_SCREEN, &bmp, "smile.BMP"))
return 1;
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;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -