16,550
社区成员
发帖
与我相关
我的任务
分享#include "stdafx.h"
#include <windows.h>
#include <windowsx.h>
#include "resource.h"
#include "MainDlg.h"
#include "commctrl.h"
HINSTANCE hinstance;
HWND hDlg_intab[2];
HWND htabctrl;
INT iCurrentPage=0;
RECT rect;
typedef int(WINAPI *DIALOGPROC)(HWND hDlg,UINT uMsg,WPARAM wParam,LPARAM lParam);
DIALOGPROC tab1_dlg_proc,tab2_dlg_proc;
DIALOGPROC DlgProc[2]={tab1_dlg_proc,tab2_dlg_proc};
BOOL WINAPI Main_Proc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
hinstance=GetModuleHandle(NULL);
switch(uMsg)
{
HANDLE_MSG(hwnd, WM_INITDIALOG, Main_OnInitDialog);
// HANDLE_MSG(hwnd, WM_COMMAND, Main_OnCommand);
HANDLE_MSG(hwnd,WM_CLOSE, Main_OnClose);
// HANDLE_MSG(hwnd,WM_SIZE,Main_OnSize);
case WM_NOTIFY:
{
if((INT)wParam==IDC_TAB)
{
if(((LPNMHDR)lParam)->code==TCN_SELCHANGE)
{
switch(TabCtrl_GetCurSel(htabctrl))
{
case 0:
{
ShowWindow(hDlg_intab[1],FALSE);
ShowWindow(hDlg_intab[0],TRUE);
MessageBox(hwnd,TEXT("当前在tab1"),TEXT(""),MB_OK);
break;
}
case 1:
{
ShowWindow(hDlg_intab[1],TRUE);
ShowWindow(hDlg_intab[0],FALSE);
MessageBox(hwnd,TEXT("当前tab2"),TEXT(""),MB_OK);
break;
}
}
}
}
break;
}
}
return FALSE;
}
BOOL Main_OnInitDialog(HWND hwnd, HWND hwndFocus, LPARAM lParam)
{
//////////////////////////////////////////////////////////// 显示tab标签
HWND htabctrl=GetDlgItem(hwnd,IDC_TAB);
TCITEM tie;
LPSTR tabname[3]={"tab1","tab2","tab3"};
tie.mask=TCIF_TEXT;
for(INT i=0;i<3;i++)
{
tie.pszText=tabname[i];
TabCtrl_InsertItem(htabctrl,i,&tie);
}
//////////////////////////////////////////////////////////////
GetClientRect(htabctrl,&rect);
for(i=0;i<2;i++)
{
hDlg_intab[i]=CreateDialog(hinstance,MAKEINTRESOURCE(IDD_DIALOG1+i),htabctrl,DlgProc[i]);
MoveWindow(hDlg_intab[i],2,29,rect.right - rect.left-6,rect.bottom - rect.top-35,FALSE);
}
ShowWindow(hDlg_intab[0],SW_SHOW);
return TRUE;
}
void Main_OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT codeNotify)
{
switch(id)
{
case IDC_OK:
{
break;
}
default:
break;
}
}
void Main_OnClose(HWND hwnd)
{
EndDialog(hwnd, 0);
}BOOL Main_OnInitDialog(HWND hwnd, HWND hwndFocus, LPARAM lParam)
{
//////////////////////////////////////////////////////////// 显示tab标签
HWND htabctrl=GetDlgItem(hwnd,IDC_TAB);
这里创建的啊. DialogBox(hInstance, MAKEINTRESOURCE(IDD_MAIN), NULL, Main_Proc);创建的.