选项卡控件的使用

1.新建默认MFC文件。

2.资源-添加Dialog-添加类。(假设生成3个,Dialog1Dialog2Dialog3)

3.类向导,添加类,点小三角形,添加MFC类。添加CTabCtrl类

4.CTabCtrl 里面添加新的函数

// 添加选项卡的[选项名]
VOID CMyTabCtrl::InsertTabColumn()
{
InsertItem(0, L"主菜单");
InsertItem(1, L"强力杀毒");
InsertItem(2, L"文件查找");
}

// 添加对话框
VOID CMyTabCtrl::InsertTabDialog()
{
// 1. 生成对话框
DialogArr[0] = new CMyDialog1;
DialogArr[1] = new CMyDialog2;
DialogArr[2] = new CMyDialog3;

// 2. 通过 id 创建窗口
DialogArr[0]->Create(IDD_DIALOG1);
DialogArr[1]->Create(IDD_DIALOG2);
DialogArr[2]->Create(IDD_DIALOG3);

// 3. 将窗口移动到指定的位置
CRect Rect;
GetClientRect(&Rect);
Rect.DeflateRect(17, 44, -9, -12);
DialogArr[0]->MoveWindow(&Rect);
DialogArr[1]->MoveWindow(&Rect);
DialogArr[2]->MoveWindow(&Rect);

// 3. 显示窗口
ShowTabDialog(1);
}

// 显示指定的对话框
VOID CMyTabCtrl::ShowTabDialog(int index)
{
for (int i = 0; i < 3; ++i)
{
if (i == index)
DialogArr[i]->ShowWindow(SW_NORMAL);
else
DialogArr[i]->ShowWindow(SW_HIDE);
}
}


BEGIN_MESSAGE_MAP(CMyTabCtrl, CTabCtrl)
ON_NOTIFY_REFLECT(TCN_SELCHANGE, &CMyTabCtrl::OnTcnSelchange)
END_MESSAGE_MAP()



// CMyTabCtrl 消息处理程序



// 消息反射处理对话框选项卡的切换
void CMyTabCtrl::OnTcnSelchange(NMHDR* pNMHDR, LRESULT* pResult)
{
// 获取点击了第几个
int index = GetCurSel();

// 显示指定的
ShowTabDialog(index);

*pResult = 0;
}

6.默认生成的Dialog绑定变量,类型为CMyTabCtrl

7.初始化默认生成的

// 向选项卡中添加数据
m_TabCtrl.InsertTabColumn();

// 添加对话框
m_TabCtrl.InsertTabDialog();

MFC_2.5 选项卡控件的使用的更多相关文章

  1. MFC_2.10选项卡控件的封装

    选项卡控件的封装 1.新建默认MFC项目 2.添加资源Dialog,属性style改child,边框改none,添加类取名CMyDialog1: 同理,CMyDialog2: 3.类向导,添加MFC类 ...

  2. cocos2dx Tab选项卡控件的实现

    选项卡控件在游戏和应用中很是常见,但是cocostudio里并没有实现好的选项卡控件,于是自己封装了 一个,效果如下: 代码: TabUiControl.h #pragma once //std #i ...

  3. 在WinForm应用程序中,使用选项卡控件来加载不同的Form界面!

    TabPage tp=new TabPage(); your选项卡控件.Controls.Add(tp); From1 frm=new Form1(); frm.TopLevel = false; f ...

  4. C# 选项卡控件

    选项卡控件,它提供一系列操作按钮,单击不同的按钮可以在各个页面之间进行切换. 在Windows Form应用程序中,选项卡控件即“TebPage”控件,它公开“TebPage”属性,表示一个由“Tab ...

  5. TabControl 选项卡控件

    TabControl 控件是由System.Windows.Forms.TabControl类提供的,作用就是讲相关的组件组合到一系列选项卡页面上.   MulitiLine 属性用来设置是否显示多行 ...

  6. KRBTabControl(中文)Windows选项卡控件

    本文阐述了如何在C#使自定义Windows选项卡控件. Download demo project - 82.4 KB Download source - 252 KB 介绍 本文讨论如何使用.NET ...

  7. PyQt5复杂控件(树控件、选项卡控件(滚动条控件、多文档控件、停靠控件)

    1.树控件的基本使用方法QTreeWidget'''QTreeWidget树控件的使用方法添加图标,添加表格,添加复选框等'''from PyQt5.QtWidgets import *from Py ...

  8. 【NX二次开发】Block UI 选项卡控件

    [NX二次开发]Block UI 选项卡控件

  9. 选项卡控件(TabControl)的操作

    移除选项卡和删除不同:前者可以从控件中移除不需要的选项,后者可以删掉整个控件.

随机推荐

  1. HDU1864_最大报销额(背包/01背包)

    解题报告 pid=1864">题目传送门 #include <cstdio> #include <cstring> #include <iostream& ...

  2. Eclipse 常用快捷键及使用技巧

    做 java 开发的,经常会用 Eclipse 或者 MyEclise 集成开发环境,一些实用的 Eclipse 快捷键和使用技巧,可以在平常开发中节约出很多时间提高工作效率,下面我就结合自己开发中的 ...

  3. BZOJ 3041 水叮当的舞步

    3041: 水叮当的舞步 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 120  Solved: 67[Submit][Status][Discuss ...

  4. 怎样处理Gradle中的这个文件下载慢的问题的

    如图:在build.gradle中的dependencies中加上要依赖的包后,就点击sync gradle.然后就开始了下载.在此过程中我是FQ了的(在此同时我是可以用chrome进入https:/ ...

  5. 【bug】Android版QQ浏览器广告过滤

    省流加速 - 广告过滤   默认开启 设别广告是添加的标签最外层标签带有adv download

  6. 牛客网9.9比赛 C 保护

    题目大意: n个城市构成一个树 m支军队 每只军队守卫 在xi到yi的最短路径上的城市 q个重要人物从vi出发 找到离根最近的点使从vi到这个点上所有路径都可以被至少ki个军队完全覆盖 输出每个答案的 ...

  7. 远程报错:这可能是由于credssp加密oracle修正

  8. python3 批量管理Linux服务器 下发命令与传输文件

    #!/usr/bin/env python3 # -*- coding: utf-8 -*- import paramiko import os, stat import sys import ope ...

  9. bzoj4619

    4619: [Wf2016]Swap Space Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 129  Solved: 54[Submit][Sta ...

  10. python 之filter()函数

    filter()函数是 Python 内置的另一个有用的高阶函数,filter()函数接收一个函数 f 和一个list,这个函数 f 的作用是对每个元素进行判断,返回 True或 False,filt ...