程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> VC >> 關於VC++ >> 制作類似網絡螞蟻的拉簾式Tab

制作類似網絡螞蟻的拉簾式Tab

編輯:關於VC++

凡用過網絡螞蟻的人都知道,網絡螞蟻界面右下角的Tab不同於一般的Tab。它是運動的,當單擊選項卡時,相應的子界面從左向右運動,給整個軟件一種動感。筆者用VC++6.0也實現了類似的Tab效果。此Tab有如下特點:

1.克服了VC++6.0提供的Tab必須在同一個界面上設計所有控件的缺陷,每一個選項卡就是一個單獨的對話框

2.實現了類似網絡螞蟻的拉簾式Tab

本文程序運行效果圖一

一.類的定義:筆者是通過封裝一個簡單的CMyTab類來實現的,該類的頭文件的部分代碼如下:

class CMyTab : public CTabCtrl
{
//////.................................省略一部分代碼
public:
int m_ispeed;//運動速度
BOOL m_bMove;//是否運動
int m_wndwidth;//子窗體的寬度
CPoint m_bottomright;//子窗體右下角的坐標
CPoint m_topleft;//子窗體左上角的坐標
CWnd *m_pCurWnd;//當前窗體
CRect m_tabrect;//Tab的矩形區域
CPoint m_ptTabs;//左上角坐標
void AddItem(CWnd *pwnd,LPTSTR name);//添加選項卡
int m_itemcount;//Item總數
virtual ~CMyTab();
// Generated message map functions
protected:
//{{AFX_MSG(CMyTab)
afx_msg void OnTimer(UINT nIDEvent);
afx_msg void OnSelchange(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnSelchanging(NMHDR* pNMHDR, LRESULT* pResult);
/

本文配套源碼

  1. 上一頁:
  2. 下一頁:
欄目導航
Copyright © 程式師世界 All Rights Reserved