📄 dialogtab.cpp
字号:
// DialogTab.cpp : implementation file
//
#include "stdafx.h"
#include "Dialog.h"
#include "DialogTab.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDialogTab dialog
CDialogTab::CDialogTab(CWnd* pParent /*=NULL*/)
: CDialog(CDialogTab::IDD, pParent)
{
//{{AFX_DATA_INIT(CDialogTab)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
void CDialogTab::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDialogTab)
DDX_Control(pDX, IDC_SCROLLBAR, m_ScrollBar);
DDX_Control(pDX, IDC_TAB, m_Tab);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDialogTab, CDialog)
//{{AFX_MSG_MAP(CDialogTab)
ON_NOTIFY(TCN_SELCHANGE, IDC_TAB, OnSelchangeTab)
ON_WM_VSCROLL()
ON_BN_CLICKED(ID_BUTTON_CANCEL, OnButtonCancel)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDialogTab message handlers
BOOL CDialogTab::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
//对Tab控件进行初始化
TC_ITEM *m_pTCItem;
m_pTCItem = new TC_ITEM;
m_pTCItem->mask = TCIF_TEXT;//接收的值为文本
m_pTCItem->pszText = "学生守则";//标签的名字
m_Tab.InsertItem(0,m_pTCItem);//插入一个新的标签
m_pTCItem->pszText = "市民公约";
m_Tab.InsertItem(1,m_pTCItem);
//显示IDC_STATIC1、IDC_SCROLLBAR两个控件
GetDlgItem(IDC_STATIC1)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_SCROLLBAR)->ShowWindow(SW_SHOW);
//隐藏IDC_STATIC2控件
GetDlgItem(IDC_STATIC2)->ShowWindow(SW_HIDE);
//对滚动条进行初始化
m_ScrollBar.SetScrollRange(1,10);//设置滚动条的范围
m_ScrollBar.SetScrollPos(1);//设置当前滚动条的位置
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CDialogTab::OnSelchangeTab(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
//当前Tab控件所选中的标签
if( m_Tab.GetCurSel() == 0 )
{
//显示IDC_STATIC1、IDC_SCROLLBAR两个控件
GetDlgItem(IDC_STATIC1)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_SCROLLBAR)->ShowWindow(SW_SHOW);
//隐藏IDC_STATIC2控件
GetDlgItem(IDC_STATIC2)->ShowWindow(SW_HIDE);
}
else
{
//隐藏IDC_STATIC1、IDC_SCROLLBAR两个控件
GetDlgItem(IDC_STATIC1)->ShowWindow(SW_HIDE);
GetDlgItem(IDC_SCROLLBAR)->ShowWindow(SW_HIDE);
//显示IDC_STATIC2控件
GetDlgItem(IDC_STATIC2)->ShowWindow(SW_SHOW);
}
*pResult = 0;
}
void CDialogTab::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
// TODO: Add your message handler code here and/or call default
//对滚动条进行重新定位
switch(nSBCode)
{
case SB_THUMBPOSITION://滚动的绝对位置
{
pScrollBar->SetScrollPos(nPos);//设置滚动条的位置
break;
}
case SB_LINEUP://单击滚动条的上箭头
{
//把滚动条设置为当前位置减1的位置
pScrollBar->SetScrollPos(pScrollBar->GetScrollPos() - 1);
break;
}
case SB_LINEDOWN://单击滚动条的下箭头
{
//把滚动条设置为当前位置加1的位置
pScrollBar->SetScrollPos(pScrollBar->GetScrollPos() + 1);
break;
}
case SB_PAGEUP://单击滚动条当前位置的上面
{
//把滚动条设置为当前位置减5的位置
pScrollBar->SetScrollPos(pScrollBar->GetScrollPos() - 5);
break;
}
case SB_PAGEDOWN://单击滚动条当前位置的下面
{
//把滚动条设置为当前位置加5的位置
pScrollBar->SetScrollPos(pScrollBar->GetScrollPos() + 5);
break;
}
}
CDialog::OnVScroll(nSBCode, nPos, pScrollBar);
}
void CDialogTab::OnButtonCancel()
{
// TODO: Add your control notification handler code here
OnOK();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -