精华内容
下载资源
问答
  • 本文实例讲述了Android编程之TabWidget选项卡用法。分享给大家供大家参考,具体如下: 1 概览 TabWidget与TabHost。tab组件一般包括TabHost和TabWidget、FrameLayout,且TabWidget、FrameLayout属于TabHost。 是否...
  • NULL 博文链接:https://iaiai.iteye.com/blog/1105192
  • TabHost控件->TabWidget(必须命名为tabs)->FrameLayout(必须命名为tabcontent)。 先来贴出本例运行的截图: main.xml的源码如下: <?xml version=1.0 encoding=utf-8?> <TabHost android:layout_width=...
  • 动态获得添加数据量,实现实时添加删除操作,自定义了Combox和spin实现combox中有多个spinBox,实现功能。动态添加删除数据信息,备注都是全的,详细讲解
  • TabWidget类似于Android 中查看电话薄的界面,通过多个标签切换显示不同内容。要实现这一效果,首先要了解TabHost,它是一个用来存放多个Tab标签的容器。每一个Tab都可以对应自己的布局,比如,电话薄中的Tab布局...
  • 在"漫步繁华街"-https://blog.csdn.net/xiezhongyuan07/article/details/82857631的基础上,增加了列的冻结功能 同时进行了抽象,提取,封装了一个独立的类,可以直接使用,只需要设定表头数据,内容数据,冻结列...
  • QT中tabwidget设置tab颜色以及点击选中颜色反转
  • 主要介绍了Android程序开发之自定义设置TabHost,TabWidget样式的相关资料,需要的朋友可以参考下
  • http://blog.csdn.net/birdno1/article/details/50516725 通过自定义view解决tabwidget下划线颜色问题
  • QT 扁平化界面风格,看起来很像移动端的界面,大气,扁平化走起
  • TabWidget

    2018-03-24 13:17:36
    TabWidget通过多个标签切换显示不同的内容。要实现这一效果,需要先了解TabHost,它是一个存放多个Tab标签的容器。每个Tab都可以对应自己的布局。1 在一个容器中编写 Activity.xml&lt;?xml version="1.0&...
    TabWidget通过多个标签切换显示不同的内容。要实现这一效果,需要先了解TabHost,它是一个存放多个Tab标签的容器。每个Tab都可以对应自己的布局。

    1 在一个容器中编写

       
    Activity.xml
    <?xml version="1.0" encoding="utf-8"?>
    <TabHost xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@android:id/tabhost"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" >
    
        <TabWidget
            android:id="@android:id/tabs"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >
        </TabWidget>
    
        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:paddingTop="65px" >
    
            <LinearLayout
                android:id="@+id/Tab1"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical" >
    
                <EditText
                    android:id="@+id/edtTab1"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content" >
                </EditText>
    
                <Button
                    android:id="@+id/btnTab1"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Tab1" >
                </Button>
            </LinearLayout>
    
            <LinearLayout
                android:id="@+id/Tab2"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal" >
    
                <EditText
                    android:id="@+id/edtTab2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_weight="300" >
                </EditText>
    
                <Button
                    android:id="@+id/btnTab2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Tab2" >
                </Button>
            </LinearLayout>
        </FrameLayout>
    
    </TabHost>

    MainActivity.java
    public class MainActivity extends TabActivity {//基于TabActivity构建
    	
    	Button btnTab1,btnTab2;
    	EditText edtTab1,edtTab2;
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
        	super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            
            TabHost tabs = getTabHost();
            //设置Tab1
            TabSpec tab1 = tabs.newTabSpec("tab1");
            tab1.setIndicator("tab1");      // 设置tab1的名称
            tab1.setContent(R.id.Tab1);    // 关联控件
            tabs.addTab(tab1);                // 添加tab1
            
            btnTab1=(Button)this.findViewById(R.id.btnTab1);
            edtTab1=(EditText)this.findViewById(R.id.edtTab1);
            btnTab1.setOnClickListener(new ClickEvent());
            
            //设置Tab2
            TabSpec tab2 = tabs.newTabSpec("tab2");
            tab2.setIndicator("tab2");      
            tab2.setContent(R.id.Tab2);    
            tabs.addTab(tab2);                
            
            btnTab2=(Button)this.findViewById(R.id.btnTab2);
            edtTab2=(EditText)this.findViewById(R.id.edtTab2);
            btnTab2.setOnClickListener(new ClickEvent());
            
            tabs.setCurrentTab(0);
        }
        
        class ClickEvent implements View.OnClickListener {
    		@Override
    		public void onClick(View v) {
    			if(v==btnTab1)
    			{
    				edtTab1.setText("tab1");
    			}
    			else if(v==btnTab2)
    			{
    				edtTab2.setText("tab2");
    			}
    		}
        
        }
    }

    2 分容器编写

              


    ic_tab_artists.xml
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:drawable="@drawable/ic_tab_artists_white"
            android:state_selected="true" />
        <item android:drawable="@drawable/ic_tab_artists_grey" />
    </selector>
    ic_tab_album.xml
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:drawable="@drawable/ic_tab_album_grey"
            	android:state_selected="false" />
        <item android:drawable="@drawable/ic_tab_album_white"
            android:state_selected="true" />
    </selector>
    main.xml
    <TabHost xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@android:id/tabhost"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
        <LinearLayout 
            android:orientation="vertical"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:padding="5dp"
            >
            <TabWidget 
                android:id="@android:id/tabs"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                ></TabWidget>
            <FrameLayout 
                android:id="@android:id/tabcontent"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:padding="5dp"
                >
            </FrameLayout>
        </LinearLayout>
    </TabHost>
    
    MainActivity.java
    public class MainActivity extends TabActivity {
    	@Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            
            Resources res = getResources();
            TabHost tabHost = getTabHost();
            TabHost.TabSpec spec;
            Intent intent;
            
            intent = new Intent().setClass(this, ArtistsActivity.class);
            spec = tabHost.newTabSpec("artists").setIndicator("Artists", res.getDrawable(R.drawable.ic_tab_artists)).setContent(intent);
            tabHost.addTab(spec);
            
            intent = new Intent().setClass(this, AlbumsActivity.class);
            spec = tabHost.newTabSpec("albums").setIndicator("Albums", res.getDrawable(R.drawable.ic_tab_album)).setContent(intent);
            tabHost.addTab(spec);
            
            tabHost.setCurrentTab(1);
    	}
    }
    展开全文
  • PYQT 实现TabWidget 双击关闭功能 soeasy
  • Qt5:TabWidget选项卡

    万次阅读 多人点赞 2018-11-12 10:31:02
    ,从左侧工具栏添加一个Tab Widget控件到窗口上,调整Tab Widget控件的大小,修改Tab Widget控件的对象名为tabWidget,选项卡和其它控件都是要自己添加的,每个选项卡控制这一个界面,然后添加如下代码: ...

    Qt的Tab Widget控件会创建一个标签栏,标签栏上可以创建很多选项卡,默认自动生成两个(tab和tab_2),其它的自己添加,而每个选项卡又控制着一个界面,切换不同的选项卡就会跳转到相应的界面,实现了资源共享的功能。

     

    简单示例 


    这个简单示例是根据官方文档使用代码来创建选项卡,没有使用Qt设计师添加,Qt设计师只是添加了一个Tab Widget标签栏。打开Qt,新建一个Qt Widgets Application项目,转到设计师模式,从左侧工具栏添加一个Tab Widget控件到窗口上,调整Tab Widget控件的大小,修改Tab Widget控件的对象名为tabWidget,然后添加如下代码:

    mainwindow.h 

    #ifndef MAINWINDOW_H
    #define MAINWINDOW_H
    
    #include <QMainWindow>
    
    namespace Ui {
    class MainWindow;
    }
    
    class MainWindow : public QMainWindow
    {
        Q_OBJECT
    
    public:
        explicit MainWindow(QWidget *parent = 0);
        ~MainWindow();
    
    private:
        Ui::MainWindow *ui;
    };
    
    #endif // MAINWINDOW_H

    mainwindow.cpp 

    #include "mainwindow.h"
    #include "ui_mainwindow.h"
    #include "QDebug"
    
    MainWindow::MainWindow(QWidget *parent) :
        QMainWindow(parent),
        ui(new Ui::MainWindow)
    {
        ui->setupUi(this);
        setWindowTitle(tr("TabWidget"));//设置标题
        ui->tabWidget->clear();//清空选项卡
    
        QWidget *tabSports=new QWidget(this);
        QWidget *tabMusic=new QWidget(this);
        QWidget *tabSoftware=new QWidget(this);
        QWidget *tabDigital=new QWidget(this);
        QWidget *tabLanguage=new QWidget(this);
    
        ui->tabWidget->setTabPosition(QTabWidget::North);//设置选项卡的方位东南西北,默认在上方
    
        ui->tabWidget->addTab(tabSports,tr("运动"));//在后面添加选项卡
        ui->tabWidget->addTab(tabMusic,tr("音乐"));
        ui->tabWidget->addTab(tabSoftware,QIcon("F:\\磊神图片\\icons\\1.ico"),tr("软件"));//在后面添加带图标的选项卡
        ui->tabWidget->insertTab(3,tabDigital,tr("数码"));//插入选项卡
        ui->tabWidget->insertTab(4,tabLanguage,QIcon("F:\\磊神图片\\icons\\3.ico"),tr("语言"));//插入带图标的选项卡
        ui->tabWidget->setTabShape(QTabWidget::Triangular);//设置选项卡的形状
        //ui->tabWidget->removeTab(0);//移除选项卡
    
        ui->tabWidget->setTabIcon(0,QIcon("F:\\磊神图片\\icons\\2.ico"));//设置选项卡图标
        ui->tabWidget->setTabIcon(1,QIcon("F:\\磊神图片\\icons\\4.ico"));//设置选项卡图标
        ui->tabWidget->setTabIcon(3,QIcon("F:\\磊神图片\\icons\\5.ico"));//设置选项卡图标
        ui->tabWidget->setIconSize(QSize(50,25));//设置图标的大小(选项卡的大小也会改变)
        ui->tabWidget->setMovable(true);
        ui->tabWidget->setTabsClosable(true);//在选项卡上添加关闭按钮
        qDebug()<<"第一个选项卡名称:"<<ui->tabWidget->tabText(0);//获取选项卡名称
        qDebug()<<"iconSize:"<<ui->tabWidget->iconSize();//获取icon的尺寸
    
        ui->tabWidget->setTabEnabled(0,false);//禁用选项卡
        ui->tabWidget->setTabEnabled(1,false);
        ui->tabWidget->setTabToolTip(2,tr("Beautiful"));//鼠标悬停弹出提示
        ui->tabWidget->usesScrollButtons();//选项卡太多滚动
        //ui->tabWidget->removeTab(0);//移除选项卡
        //ui->tabWidget->setTabWhatsThis(3,tr("Beautiful Girl"));//不知道干嘛的
        //ui->tabWidget->setTabBarAutoHide(true);//包含少于2个选项卡时会自动隐藏
        //ui->tabWidget->setTabText(0,tr("软件"));//按索引修改选项卡的名称
        //ui->tabWidget->setTabText(1,tr("舞蹈"));
        //ui->tabWidget->setDocumentMode(true);//设置选项卡是否以适合文档页面的模式呈现
        //ui->tabWidget->setElideMode(Qt::ElideLeft);//标签栏中删除文字
    
        //ui->tabWidget->clear();//清空选项卡
    }
    
    MainWindow::~MainWindow()
    {
        delete ui;
    }

    显示效果


     

    综合示例 


    综合示例Tab Widget选项卡控制着表格、柱状图、按钮和编辑框、树部件、列表部件的显示,里面用到了QCustomPlot类绘制柱状图,需要添加一些东西,使用方法请看另一篇文章:https://blog.csdn.net/mars_xiaolei/article/details/83281209。打开Qt,新建一个Qt Widgets Application项目,转到设计师模式,从左侧工具栏添加一个Tab Widget控件到窗口上,调整Tab Widget控件的大小,修改Tab Widget控件的对象名为tabWidget,选项卡和其它控件都是要自己添加的,每个选项卡控制这一个界面,然后添加如下代码:

      pro文件

    #------------------------------------------------
    #
    # Project created by QtCreator 2018-11-09T13:39:09
    #
    #-------------------------------------------------
    QT       += core gui
    greaterThan(QT_MAJOR_VERSION, 4): QT += widgets printsupport
    TARGET = QTabWidget
    TEMPLATE = app
    # The following define makes your compiler emit warnings if you use
    # any feature of Qt which has been marked as deprecated (the exact warnings
    # depend on your compiler). Please consult the documentation of the
    # deprecated API in order to know how to port your code away from it.
    DEFINES += QT_DEPRECATED_WARNINGS
    # You can also make your code fail to compile if you use deprecated APIs.
    # In order to do so, uncomment the following line.
    # You can also select to disable deprecated APIs only up to a certain version of Qt.
    #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0
    SOURCES += \       
     main.cpp \       
     mainwindow.cpp \    
    qcustomplot.cpp
    HEADERS += \        
    mainwindow.h \    
    qcustomplot.h
    FORMS += \       
     mainwindow.ui
    

    mainwindow.h

    #ifndef MAINWINDOW_H
    #define MAINWINDOW_H
    
    #include <QMainWindow>
    
    namespace Ui {
    class MainWindow;
    }
    
    class MainWindow : public QMainWindow
    {
        Q_OBJECT
    
    public:
        explicit MainWindow(QWidget *parent = 0);
        ~MainWindow();
    
    private:
        Ui::MainWindow *ui;
    };
    
    #endif // MAINWINDOW_H
    

    mainwindow.cpp

    #include "mainwindow.h"
    #include "ui_mainwindow.h"
    #include "QDebug"
    #include <QTableWidget>//表格
    #include <QTableWidgetItem>//表格
    #include "qcustomplot.h"
    #include <QTreeWidget>
    #include "QStringList"
    
    MainWindow::MainWindow(QWidget *parent) :
        QMainWindow(parent),
        ui(new Ui::MainWindow)
    {
        ui->setupUi(this);
        setWindowTitle(tr("TabWidget"));//设置标题
    
        ui->tabWidget->setTabPosition(QTabWidget::North);//设置选项卡的方位东南西北,默认在上方
        //ui->tabWidget->setTabShape(QTabWidget::Triangular);//设置选项卡的形状
        ui->tabWidget->setTabIcon(0,QIcon("E:\\Qt_Project\\QTabWidget\\1.ico"));//设置选项卡图标
        ui->tabWidget->setTabIcon(1,QIcon("E:\\Qt_Project\\QTabWidget\\2.ico"));//设置选项卡图标
        ui->tabWidget->setTabIcon(2,QIcon("E:\\Qt_Project\\QTabWidget\\3.ico"));//设置选项卡图标
        ui->tabWidget->setTabIcon(3,QIcon("E:\\Qt_Project\\QTabWidget\\4.ico"));//设置选项卡图标
        ui->tabWidget->setTabIcon(4,QIcon("E:\\Qt_Project\\QTabWidget\\5.ico"));//设置选项卡图标
        ui->tabWidget->setIconSize(QSize(50,25));//设置图标的大小(选项卡的大小也会改变)
        ui->tabWidget->setMovable(true);
        ui->tabWidget->setTabsClosable(true);//在选项卡上添加关闭按钮
        qDebug()<<"第一个选项卡名称:"<<ui->tabWidget->tabText(0);//获取选项卡名称
        qDebug()<<"iconSize:"<<ui->tabWidget->iconSize();//获取icon的尺寸
        //ui->tabWidget->clear();//清空选项卡
    
        /*
         * 运动选项卡
        */
        ui->tableWidgetSports->setColumnCount(6);//设置列数
        ui->tableWidgetSports->setRowCount(10);//设置行数
        ui->tableWidgetSports->setWindowTitle("QTableWidget");
        QStringList m_Header;
        m_Header<<QString("田径")<<QString("篮球")<<QString("足球")<<QString("乒乓球")<<QString("羽毛球")<<QString("游泳");
        ui->tableWidgetSports->setHorizontalHeaderLabels(m_Header);//添加横向表头
        ui->tableWidgetSports->verticalHeader()->setVisible(true);//纵向表头可视化
        ui->tableWidgetSports->horizontalHeader()->setVisible(true);//横向表头可视化
        //ui->tableWidget->setShowGrid(false);//隐藏栅格
        ui->tableWidgetSports->setEditTriggers(QAbstractItemView::NoEditTriggers);//设置编辑方式:禁止编辑表格
        ui->tableWidgetSports->setSelectionBehavior(QAbstractItemView::SelectRows);//设置表格选择方式:设置表格为整行选中
        //ui->qTableWidget->setSelectionBehavior(QAbstractItemView::SelectColumns);//设置表格选择方式:设置表格为整列选中
        ui->tableWidgetSports->setSelectionMode(QAbstractItemView::SingleSelection);//选择目标方式
        ui->tableWidgetSports->setStyleSheet("selection-background-color:pink");//设置选中颜色:粉色
    
        for(int rows=0;rows<10;rows++)
        {
            for(int columns=0;columns<6;columns++)
            {
                if(columns==0)
                {
                    ui->tableWidgetSports->setItem(rows,columns,new QTableWidgetItem("刘翔"));
                }
                else if(columns==1)
                {
                    ui->tableWidgetSports->setItem(rows,columns,new QTableWidgetItem("姚明"));
                }
                else if(columns==2)
                {
                    ui->tableWidgetSports->setItem(rows,columns,new QTableWidgetItem("C罗"));
                }
                else  if(columns==3)
                {
                    ui->tableWidgetSports->setItem(rows,columns,new QTableWidgetItem("马林"));
                }
                else if(columns==4)
                {
                    ui->tableWidgetSports->setItem(rows,columns,new QTableWidgetItem("林丹"));
                }
                else if(columns==5)
                {
                    ui->tableWidgetSports->setItem(rows,columns,new QTableWidgetItem("孙杨"));
                }
            }
        }
        for(int rows=0;rows<10;rows++)
        {
            for(int columns=0;columns<6;columns++)
            {
                ui->tableWidgetSports->setColumnWidth(columns,125);
                ui->tableWidgetSports->setRowHeight(rows,30);
                ui->tableWidgetSports->item(rows,columns)->setTextAlignment(Qt::AlignCenter);//居中显示
                ui->tableWidgetSports->item(rows,columns)->setBackgroundColor(QColor(85,170,255));//设置前景颜色
                ui->tableWidgetSports->item(rows,columns)->setTextColor(QColor(0,0,0));//设置文本颜色
                ui->tableWidgetSports->item(rows,columns)->setFont(QFont("Helvetica"));//设置字体为黑体
            }
        }
    
    
        //音乐选项卡
        ui->qCustomPlotMusic->plotLayout()->insertRow(0);
        ui->qCustomPlotMusic->plotLayout()->addElement(0, 0, new QCPTextElement(ui->qCustomPlotMusic, "网易云音乐播放和评论统计图", QFont("微软雅黑",12, QFont::Bold)));
    
    
        // set dark background gradient设置暗背景梯度:
        QLinearGradient gradient(0, 0, 0, 400);
        gradient.setColorAt(0, QColor(200, 150, 220));
        gradient.setColorAt(0.56, QColor(200, 150, 200));
        gradient.setColorAt(1, QColor(220, 150, 200));
        ui->qCustomPlotMusic->setBackground(QBrush(gradient));
    
        // create empty bar chart objects创建三个空的条形图对象:
        QCPBars *LoveTime = new QCPBars(ui->qCustomPlotMusic->xAxis, ui->qCustomPlotMusic->yAxis);//播放
        QCPBars *LoveTimes = new QCPBars(ui->qCustomPlotMusic->xAxis, ui->qCustomPlotMusic->yAxis2);//评论
        //将LatencyTime和ErrorTimes并排显示
        QCPBarsGroup *group = new QCPBarsGroup(ui->qCustomPlotMusic);
        LoveTime->setBarsGroup(group);
        LoveTimes->setBarsGroup(group);
        //设置抗锯齿
        LoveTime->setAntialiased(false); // gives more crisp, pixel aligned bar borders:提供更清晰,像素对齐的条形边框
        LoveTimes->setAntialiased(false);
        //设置叠加差距
        //LatencyTime->setStackingGap(1);
        //ErrorTimes->setStackingGap(1);
        //fossil->setStackingGap(1);
        // set names and colors设置名称和颜色:
        LoveTimes->setWidth(0.3);//设置宽度
        //ErrorTimes->setWidthType("wtPlotCoords");//wtAbsolute:wtAxisRectRatio:wtPlotCoords设置宽度
        LoveTimes->setName("评论");
        LoveTimes->setPen(QPen(QColor(250, 170, 20).lighter(150)));
        LoveTimes->setBrush(QColor(250, 170, 20));
        LoveTime->setWidth(0.3);//设置宽度
        //LatencyTime->setWidthType("wtPlotCoords");//wtAbsolute:wtAxisRectRatio:wtPlotCoords设置宽度
        LoveTime->setName("播放");
        LoveTime->setPen(QPen(QColor(0, 168, 140).lighter(130)));
        LoveTime->setBrush(QColor(0, 168, 140));
        // stack bars on top of each other把一个Bar叠加在另外一个Bar上面
        //ErrorTimes->moveAbove(fossil);
        //LatencyTime->moveAbove(ErrorTimes);
    
        //绘制xAxis
        QVector<double> ticks;
        QVector<QString> labels;
        ticks << 1 << 2 << 3 << 4 << 5 << 6 << 7<<8;
        labels << "盗将行" << "流浪" << "倒数" << "沙漠骆驼" << "爱的故事" << "成都" << "38度6"<<"卡路里";
        QSharedPointer<QCPAxisTickerText> textTicker(new QCPAxisTickerText);
        textTicker->addTicks(ticks, labels);
        ui->qCustomPlotMusic->xAxis->setTicker(textTicker);//设置刻度标记CH
        ui->qCustomPlotMusic->xAxis->setTickLabelRotation(60);//设置刻度标签旋转
        ui->qCustomPlotMusic->xAxis->setSubTicks(false);//设置是否显示子刻度线
        ui->qCustomPlotMusic->xAxis->setTickLength(0, 4);//设置标记的长度
        ui->qCustomPlotMusic->xAxis->setRange(0, 9);//设置范围
        ui->qCustomPlotMusic->xAxis->setBasePen(QPen(Qt::white));//设置轴基线颜色
        ui->qCustomPlotMusic->xAxis->setTickPen(QPen(Qt::white));//设置刻度颜色
        ui->qCustomPlotMusic->xAxis->grid()->setVisible(true);//网格可视
        ui->qCustomPlotMusic->xAxis->grid()->setPen(QPen(QColor(130, 130, 130), 0, Qt::DotLine));//网格虚线
        ui->qCustomPlotMusic->xAxis->setTickLabelColor(Qt::white);//设置刻度标签颜色
        ui->qCustomPlotMusic->xAxis->setLabelColor(Qt::white);//设置轴标签的颜色
    
        // 绘制yAxis:
        ui->qCustomPlotMusic->yAxis->setRange(0, 1000000);//设置轴范围的下限和上限
        ui->qCustomPlotMusic->yAxis->setPadding(5); // 设置轴的填充a bit more space to the left border:在左边边界多留一点空间
        ui->qCustomPlotMusic->yAxis->setLabel("播放次数(次)");
        ui->qCustomPlotMusic->yAxis->setBasePen(QPen(Qt::white));//设置轴基线颜色
        ui->qCustomPlotMusic->yAxis->setTickPen(QPen(Qt::white));//设置刻度线颜色
        ui->qCustomPlotMusic->yAxis->setSubTickPen(QPen(Qt::white));//设置子刻度线颜色
        ui->qCustomPlotMusic->yAxis->grid()->setSubGridVisible(true);//设置子网格可视
        ui->qCustomPlotMusic->yAxis->setTickLabelColor(Qt::white);//设置刻度标签颜色
        ui->qCustomPlotMusic->yAxis->setLabelColor(Qt::white);//设置轴标签的颜色
        ui->qCustomPlotMusic->yAxis->grid()->setPen(QPen(QColor(130, 130, 130), 0, Qt::SolidLine));//设置网格颜色和线型,网格实线
        ui->qCustomPlotMusic->yAxis->grid()->setSubGridPen(QPen(QColor(130, 130, 130), 0, Qt::DotLine));//设置子网格颜色和线型,网格虚线
    
        // 绘制yAxis2:
        ui->qCustomPlotMusic->yAxis2->setRange(0, 10000);//设置轴范围的下限和上限
        ui->qCustomPlotMusic->yAxis2->setPadding(5); // 设置轴的填充a bit more space to the left border:在左边边界多留一点空间
        ui->qCustomPlotMusic->yAxis2->setLabel("评论次数(次)");
        ui->qCustomPlotMusic->yAxis2->setBasePen(QPen(Qt::white));//设置轴基线颜色
        ui->qCustomPlotMusic->yAxis2->setTickPen(QPen(Qt::white));//设置刻度线颜色
        ui->qCustomPlotMusic->yAxis2->setSubTickPen(QPen(Qt::white));//设置子刻度线颜色
        ui->qCustomPlotMusic->yAxis2->grid()->setSubGridVisible(true);//设置子网格可视
        ui->qCustomPlotMusic->yAxis2->setTickLabelColor(Qt::white);//设置刻度标签颜色
        ui->qCustomPlotMusic->yAxis2->setLabelColor(Qt::white);//设置轴标签的颜色
        ui->qCustomPlotMusic->yAxis2->grid()->setPen(QPen(QColor(130, 130, 130), 0, Qt::SolidLine));//设置网格颜色和线型,网格实线
        ui->qCustomPlotMusic->yAxis2->grid()->setSubGridPen(QPen(QColor(130, 130, 130), 0, Qt::DotLine));//设置子网格颜色和线型,网格虚线
        ui->qCustomPlotMusic->yAxis2->setVisible(true);//默认为不可视,需要设置为可视
        // Add data添加数据:
        QVector<double> LoveTimesData, LoveTimeData;
        LoveTimesData << 1553 << 2454<< 7676 << 2434 << 5641 << 9655 << 3556<<6899;
        LoveTimeData   << 121334 << 65657 << 534343 << 65778 << 134356 << 978788 << 44345<<9545;
        LoveTimes->setData(ticks, LoveTimesData);//将容器内数据添加到对应刻度的点上,数量应相同
        LoveTime->setData(ticks, LoveTimeData);
    
        // setup legend设置说明图例:
        ui->qCustomPlotMusic->legend->setVisible(true);//说明图例可视
        ui->qCustomPlotMusic->axisRect()->insetLayout()->setInsetAlignment(0, Qt::AlignTop|Qt::AlignLeft);//AlignTop:顶端对齐,AlignHCenter:中心对齐
        ui->qCustomPlotMusic->legend->setBrush(QColor(255, 255, 255, 100));
        ui->qCustomPlotMusic->legend->setBorderPen(Qt::NoPen);//设置边框颜色
        QFont legendFont = font();//获取字体
        legendFont.setPointSize(10);//设置字体大小,必须大于0
        //legendFont.setStyleName(Qt::微软雅黑);
    
        ui->qCustomPlotMusic->legend->setFont(legendFont);//设置默认字体
        //ui->qCustomPlotMusic->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom);//客户交互,界面可以移动
    
        //软件选项卡
        ui->radioButton_6->setChecked(true);//选中网易公开课
        ui->checkBox->setChecked(true);//选中网易公开课
    
    
        //ui->treeWidgetDigital->clear();
        ui->treeWidgetDigital->setColumnCount(1); //设置列数
        ui->treeWidgetDigital->setHeaderLabels(QStringList(tr("数码产品")));//设置头的标题
        ui->treeWidgetDigital->setHeaderHidden(false);
        QTreeWidgetItem *items1 = new QTreeWidgetItem(ui->treeWidgetDigital,
                               QStringList(QString("手机")));
        items1->setIcon(0,QIcon("E:\\Qt_Project\\QTabWidget\\1.ico"));
        QTreeWidgetItem *items11 = new QTreeWidgetItem(items1,
                               QStringList(QString("苹果")));
        items11->setIcon(0,QIcon("E:\\Qt_Project\\QTabWidget\\2.ico"));
        QTreeWidgetItem *items12 = new QTreeWidgetItem(items1,
                               QStringList(QString("华为")));
        items12->setIcon(0,QIcon("E:\\Qt_Project\\QTabWidget\\3.ico"));
        QTreeWidgetItem *items13 = new QTreeWidgetItem(items1,
                               QStringList(QString("小米")));
        items13->setIcon(0,QIcon("E:\\Qt_Project\\QTabWidget\\4.ico"));
    
        QTreeWidgetItem *items2 = new QTreeWidgetItem(ui->treeWidgetDigital,
                               QStringList(QString("笔记本电脑")));
        items2->setIcon(0,QIcon("E:\\Qt_Project\\QTabWidget\\5.ico"));
        QTreeWidgetItem *items21 = new QTreeWidgetItem(items2,
                               QStringList(QString("Dell")));
        items21->setIcon(0,QIcon("E:\\Qt_Project\\QTabWidget\\6.ico"));
        QTreeWidgetItem *items22 = new QTreeWidgetItem(items2,
                               QStringList(QString("华硕")));
        items22->setIcon(0,QIcon("E:\\Qt_Project\\QTabWidget\\7.ico"));
    
        QTreeWidgetItem *items3 = new QTreeWidgetItem(ui->treeWidgetDigital,
                               QStringList(QString("平板电脑")));
        items3->setIcon(0,QIcon("E:\\Qt_Project\\QTabWidget\\8.ico"));
    
        QList<QTreeWidgetItem *> rootList;
        QTreeWidgetItem *items4 = new QTreeWidgetItem;   //添加第一个父节点
        items4->setText(0,tr("数码相机"));
        items4->setIcon(0,QIcon("E:\\Qt_Project\\QTabWidget\\9.ico"));
        rootList.append(items4);
        QTreeWidgetItem *items41= new QTreeWidgetItem(items4,QStringList(QString("索尼"))); //添加子节点
        items41->setIcon(0,QIcon("E:\\Qt_Project\\QTabWidget\\10.ico"));
        items4->addChild(items41);
        ui->treeWidgetDigital->insertTopLevelItems(0,rootList);  //将结点插入部件中
        ui->treeWidgetDigital->expandAll(); //结点全部展开
        //ui->items1->setText(0, "手机");
        //ui->treeWidgetDigital->addTopLevelItem(new QTreeWidgetItem((QTreeWidget*)0));
        //ui->treeWidgetDigital->addTopLevelItem(tr("笔记本电脑"));
    
        //语言选项卡
        ui->listWidgetLanguage->addItem(tr("中文"));
        ui->listWidgetLanguage->addItem(tr("英语"));
        ui->listWidgetLanguage->addItem(tr("法语"));
        ui->listWidgetLanguage->addItem(tr("德语"));
        ui->listWidgetLanguage->addItem(tr("日语"));
        ui->listWidgetLanguage->addItem(tr("韩语"));
        ui->listWidgetLanguage->addItem(tr("俄语"));
    }
    
    MainWindow::~MainWindow()
    {
        delete ui;
    }

     显示效果


     

    完整代码


    简单示例百度网盘链接:https://pan.baidu.com/s/1oIeuz7A3q_eZQ7XY1CjzcA 
    提取码:ir81 

    综合示例百度网盘链接:https://pan.baidu.com/s/1rhM_9ij0cXGLdQ_kh3yPmw 
    提取码:ppbe 

     

    展开全文
  • QT TabWidget设置选项卡

    千次阅读 2019-10-08 17:58:33
    QT TabWidget设置选项卡 实现效果 在选中右侧指定标签时,该标签背景显示浅色背景图片,字体图片为深色;其他标签背景为灰色背景图片,字体图片也显示深灰色。 标签的添加与删除 1、添加标签 2、删除标签 移动...

    QT TabWidget设置选项卡

    实现效果

    在选中右侧指定标签时,该标签背景显示浅色背景图片,字体图片为深色;其他标签背景为灰色背景图片,字体图片也显示深灰色。
    在这里插入图片描述

    标签的添加与删除

    1、添加标签
    在这里插入图片描述
    2、删除标签
    在这里插入图片描述

    移动标签

    通过属性栏设置标签的位置
    ###

    设置标签的大小与不同状态的背景

    修改样式表设置标签的长宽,设置标签在被选中与未选中时显示不同的背景
    在这里插入图片描述
    代码片:

    QTabBar::tab{width:90}
    QTabBar::tab{height:142}
    
    QTabBar::tab:selected{background-image:url(/home/jenny/res/MainTabSel.png)}
    QTabBar::tab:!selected{background-image: url(/home/jenny/res/MainTabUnsel.png)}
    

    设置标签图片

    使用addPixmap()函数添加图片。
    此时如图所示显示一个小图标,需要将图标放大。
    在这里插入图片描述

    设置图标大小

    使用setIconSize()函数设置图片的大小。
    注意:需要通过QSize设置长宽
    此时如图所示显示的图标变为指定大小的图片,但是图片为横向,需要将图片旋转。
    在这里插入图片描述
    代码片:

        QSize  size; 
        size.setHeight(142);
        size.setWidth(90);
        ui->tabWidget->setIconSize(size);
    

    设置图片旋转

    使用QMatrix类中的rotate()函数旋转图片。
    此时如图所示显示一个小图标,需要将图标放大。
    在这里插入图片描述
    代码片:

       QMatrix matrix;
       matrix.rotate(270);      //旋转270度
    

    MainWindow.h

    #ifndef MAINWINDOW_H
    #define MAINWINDOW_H
    #include <QMainWindow>
    
    namespace Ui {
    class MainWindow;
    }
    class MainWindow : public QMainWindow
    {
        Q_OBJECT
    
    public:
        explicit MainWindow(QWidget *parent = 0);
        ~MainWindow();
    private slots:
        void on_tabWidget_tabBarClicked(int index);
    private:
        Ui::MainWindow *ui;
    };
    
    #endif // MAINWINDOW_H
    

    MainWindow.cpp

    #include "mainwindow.h"
    #include "ui_mainwindow.h"
    #include "QTabBar"
    MainWindow::MainWindow(QWidget *parent) :
        QMainWindow(parent),
        ui(new Ui::MainWindow)
    {
        ui->setupUi(this);
        ui->tabWidget->setCurrentIndex(0);//设置选中第一个标签
        QIcon icon0A,icon1B,icon2B,icon3B;
        QSize  size;
        QMatrix matrix;
        size.setHeight(142);
        size.setWidth(90);
        matrix.rotate(270);      //旋转270度
        ui->tabWidget->setIconSize(size);
    
        icon0A.addPixmap(QPixmap("/home/jenny/res/MainTab0A.png").transformed(matrix,Qt::SmoothTransformation));//改变-平滑变换
        ui->tabWidget->setTabIcon(0,icon0A);
    
        icon1B.addPixmap(QPixmap("/home/jenny/res/MainTab1B.png").transformed(matrix,Qt::SmoothTransformation));
        ui->tabWidget->setTabIcon(1,icon1B);
        icon2B.addPixmap(QPixmap("/home/jenny/res/MainTab2B.png").transformed(matrix,Qt::SmoothTransformation));
        ui->tabWidget->setTabIcon(2,icon2B);
        icon3B.addPixmap(QPixmap("/home/jenny/res/MainTab3B.png").transformed(matrix,Qt::SmoothTransformation));
        ui->tabWidget->setTabIcon(3,icon3B);
    
        ui->tabWidget->setFocusPolicy(Qt::NoFocus);//实现点击无焦点,去除虚线框
    
    }
    
    MainWindow::~MainWindow()
    {
        delete ui;
    }
    
    void MainWindow::on_tabWidget_tabBarClicked(int index)
    {
        QIcon icon0A,icon1A,icon2A,icon3A;
        QIcon icon0B,icon1B,icon2B,icon3B;
        QSize  size;
        QMatrix matrix;
        size.setHeight(150);
        size.setWidth(100);
        matrix.rotate(270);
        ui->tabWidget->setIconSize(size);
        if(index==0)
        {
            icon0A.addPixmap(QPixmap("/home/jenny/res/MainTab0A.png").transformed(matrix,Qt::SmoothTransformation));
            ui->tabWidget->setTabIcon(0,icon0A);
    
            icon1B.addPixmap(QPixmap("/home/jenny/res/MainTab1B.png").transformed(matrix,Qt::SmoothTransformation));
            ui->tabWidget->setTabIcon(1,icon1B);
            icon2B.addPixmap(QPixmap("/home/jenny/res/MainTab2B.png").transformed(matrix,Qt::SmoothTransformation));
            ui->tabWidget->setTabIcon(2,icon2B);
            icon3B.addPixmap(QPixmap("/home/jenny/res/MainTab3B.png").transformed(matrix,Qt::SmoothTransformation));
            ui->tabWidget->setTabIcon(3,icon3B);
        }
        if(index==1)
        {
            icon1A.addPixmap(QPixmap("/home/jenny/res/MainTab1A.png").transformed(matrix,Qt::SmoothTransformation));
            ui->tabWidget->setTabIcon(1,icon1A);
    
            icon0B.addPixmap(QPixmap("/home/jenny/res/MainTab0B.png").transformed(matrix,Qt::SmoothTransformation));
            ui->tabWidget->setTabIcon(0,icon0B);
            icon2B.addPixmap(QPixmap("/home/jenny/res/MainTab2B.png").transformed(matrix,Qt::SmoothTransformation));
            ui->tabWidget->setTabIcon(2,icon2B);
            icon3B.addPixmap(QPixmap("/home/jenny/res/MainTab3B.png").transformed(matrix,Qt::SmoothTransformation));
            ui->tabWidget->setTabIcon(3,icon3B);
        }
        if(index==2)
        {
            icon2A.addPixmap(QPixmap("/home/jenny/res/MainTab2A.png").transformed(matrix,Qt::SmoothTransformation));
            ui->tabWidget->setTabIcon(2,icon2A);
    
            icon0B.addPixmap(QPixmap("/home/jenny/res/MainTab0B.png").transformed(matrix,Qt::SmoothTransformation));
            ui->tabWidget->setTabIcon(0,icon0B);
            icon1B.addPixmap(QPixmap("/home/jenny/res/MainTab1B.png").transformed(matrix,Qt::SmoothTransformation));
            ui->tabWidget->setTabIcon(1,icon1B);
            icon3B.addPixmap(QPixmap("/home/jenny/res/MainTab3B.png").transformed(matrix,Qt::SmoothTransformation));
            ui->tabWidget->setTabIcon(3,icon3B);
        }
        if(index==3)
        {
            icon3A.addPixmap(QPixmap("/home/jenny/res/MainTab3A.png").transformed(matrix,Qt::SmoothTransformation));
            ui->tabWidget->setTabIcon(3,icon3A);
    
            icon0B.addPixmap(QPixmap("/home/jenny/res/MainTab0B.png").transformed(matrix,Qt::SmoothTransformation));
            ui->tabWidget->setTabIcon(0,icon0B);
            icon1B.addPixmap(QPixmap("/home/jenny/res/MainTab1B.png").transformed(matrix,Qt::SmoothTransformation));
            ui->tabWidget->setTabIcon(1,icon1B);
            icon2B.addPixmap(QPixmap("/home/jenny/res/MainTab2B.png").transformed(matrix,Qt::SmoothTransformation));
            ui->tabWidget->setTabIcon(2,icon2B);
        }
    }
    
    
    展开全文
  • TabHost+TabWidget+FrameLayout实现主页面实现底部栏;
  • QT界面:tabWidget选项卡使用小结

    万次阅读 多人点赞 2019-08-26 10:18:25
    首先创建一个Qt GUI Application,在GUI上拖拽一个tabWidget,对象名为tabWidget。系统会默认建立两个选项卡,如果不用可以先删除。 如图: 在资源文件中添加icon与图像资源: tabWidget.h : #pragma once #...

    环境:Win10+VS2015+Qt5.9.7

    首先创建一个Qt GUI Application,在GUI上拖拽一个tabWidget,对象名为tabWidget。系统会默认建立两个选项卡,如果不用可以先删除。
    如图:
    在这里插入图片描述
    在资源文件中添加icon与图像资源:
    在这里插入图片描述

    tabWidget.h :

    #pragma once
    
    #include <QtWidgets/QMainWindow>
    #include <QDebug>
    #include <QHBoxLayout>
    #include <QPushButton>
    #include <QCheckBox>
    #include <QRadioButton>
    
    #include "ui_tabWidget.h"
    
    #pragma execution_character_set("utf-8")
    
    class tabWidget : public QMainWindow
    {
    	Q_OBJECT
    
    public:
    	tabWidget(QWidget *parent = Q_NULLPTR);
    
    private:
    	Ui::tabWidgetClass ui;
    };
    
    

    在“采集”选项中添加一些按钮资源:

    tabWidget.cpp :

    #include "tabWidget.h"
    
    tabWidget::tabWidget(QWidget *parent)
    	: QMainWindow(parent)
    {
    	ui.setupUi(this);
    
    	QWidget *tabCalibration = new QWidget(this);
    	QWidget *tabImage = new QWidget(this);
    
    	ui.tabWidget->setTabPosition(QTabWidget::North);//设置选项卡的方位,默认在上方(东南西北)
    	ui.tabWidget->addTab(tabCalibration, QIcon("Resources\\a10.ico"), tr("校准"));//在后面添加带图标的选项卡
    	//ui.tabWidget->setIconSize(QSize(50, 25));//设置图标的大小(选项卡的大小也会改变)
    	ui.tabWidget->addTab(tabImage, QIcon(QPixmap("Resources\\a11.png").scaled(150, 120)), NULL);//添加选项卡
    	ui.tabWidget->setTabToolTip(1, tr("图像"));//鼠标悬停弹出提示
    	ui.tabWidget->setTabShape(QTabWidget::Triangular);//设置选项卡的形状 Rounded	
    	ui.tabWidget->setMovable(true);
    	ui.tabWidget->usesScrollButtons();//选项卡滚动
    	//ui->tabWidget->removeTab(0);//移除选项卡
    	//ui->tabWidget->clear();//清空选项卡
    
    	QHBoxLayout *hlayout1 = new QHBoxLayout;
    	QRadioButton *continusModeRadioButton = new QRadioButton(tr("连续"));
    	QRadioButton *triggerModeRadioButton = new QRadioButton(tr("触发"));
    	hlayout1->addWidget(continusModeRadioButton);
    	hlayout1->addWidget(triggerModeRadioButton);
    
    	QHBoxLayout *hlayout2 = new QHBoxLayout;
    	QPushButton *startGrabbingPushButton = new QPushButton(tr("开始"));
    	QPushButton *stopGrabbingPushButton = new QPushButton(tr("停止"));
    	hlayout2->addWidget(startGrabbingPushButton);
    	hlayout2->addWidget(stopGrabbingPushButton);
    
    	QHBoxLayout *hlayout3 = new QHBoxLayout;
    	QCheckBox *softwareTriggerCheckBox = new QCheckBox(tr("选择"));
    	QPushButton *softwareOncePushButton = new QPushButton(tr("终止"));
    	hlayout3->addWidget(softwareTriggerCheckBox);
    	hlayout3->addWidget(softwareOncePushButton);
    
    	QHBoxLayout *hlayout4 = new QHBoxLayout;
    	QCheckBox *detectionCheckBox = new QCheckBox(tr("检测"));
    	hlayout4->addWidget(detectionCheckBox);
    
    	QGridLayout *vlayout = new QGridLayout;
    	vlayout->addLayout(hlayout1, 0, 0);
    	vlayout->addLayout(hlayout2, 1, 0);
    	vlayout->addLayout(hlayout3, 2, 0);
    	vlayout->addLayout(hlayout4, 3, 0);
    
    	QWidget *tabCollection = new QWidget;
    	tabCollection->setLayout(vlayout);
    	ui.tabWidget->insertTab(1, tabCollection, QIcon("Resources\\a12.ico"), tr("采集"));//插入选项卡
    }
    
    

    最后界面效果,如图:
    在这里插入图片描述
    在这里插入图片描述

    这时,可以为选项卡中的控件资源添加槽函数:

    tabWidget.h :

    #pragma once
    
    #include <QtWidgets/QMainWindow>
    #include <QDebug>
    #include <QHBoxLayout>
    #include <QPushButton>
    #include <QCheckBox>
    #include <QRadioButton>
    #include <QMessageBox>
    
    #include "ui_tabWidget.h"
    
    #pragma execution_character_set("utf-8")
    
    class tabWidget : public QMainWindow
    {
    	Q_OBJECT
    
    public:
    	tabWidget(QWidget *parent = Q_NULLPTR);
    
    private:
    	Ui::tabWidgetClass ui;
    
    	QPushButton *startGrabbingPushButton;
    	QPushButton *stopGrabbingPushButton;
    
    private slots:
    	void runPushButtonSlot();
    
    };
    
    

    tabWidget.cpp :

    #include "tabWidget.h"
    
    tabWidget::tabWidget(QWidget *parent)
    	: QMainWindow(parent)
    {
    	ui.setupUi(this);
    
    	QWidget *tabCalibration = new QWidget(this);
    	QWidget *tabImage = new QWidget(this);
    
    	ui.tabWidget->setTabPosition(QTabWidget::North);//设置选项卡的方位,默认在上方(东南西北)
    	ui.tabWidget->addTab(tabCalibration, QIcon("Resources\\a10.ico"), tr("校准"));//在后面添加带图标的选项卡
    	//ui.tabWidget->setIconSize(QSize(50, 25));//设置图标的大小(选项卡的大小也会改变)
    	ui.tabWidget->addTab(tabImage, QIcon(QPixmap("Resources\\a11.png").scaled(150, 120)), NULL);//添加选项卡
    	ui.tabWidget->setTabToolTip(1, tr("图像"));//鼠标悬停弹出提示
    	ui.tabWidget->setTabShape(QTabWidget::Triangular);//设置选项卡的形状 Rounded	
    	ui.tabWidget->setMovable(true);
    	ui.tabWidget->usesScrollButtons();//选项卡滚动
    	//ui->tabWidget->removeTab(0);//移除选项卡
    	//ui->tabWidget->clear();//清空选项卡
    
    	QHBoxLayout *hlayout1 = new QHBoxLayout;
    	QRadioButton *continusModeRadioButton = new QRadioButton(tr("连续"));
    	QRadioButton *triggerModeRadioButton = new QRadioButton(tr("触发"));
    	hlayout1->addWidget(continusModeRadioButton);
    	hlayout1->addWidget(triggerModeRadioButton);
    
    	QHBoxLayout *hlayout2 = new QHBoxLayout;
    	startGrabbingPushButton = new QPushButton(tr("开始"));
    	startGrabbingPushButton->setStyleSheet("background-color: rgb(0, 255, 127);");
    	QObject::connect(startGrabbingPushButton, SIGNAL(clicked()), this, SLOT(runPushButtonSlot()));
    	stopGrabbingPushButton = new QPushButton(tr("停止"));
    
    	hlayout2->addWidget(startGrabbingPushButton);
    	hlayout2->addWidget(stopGrabbingPushButton);
    
    	QHBoxLayout *hlayout3 = new QHBoxLayout;
    	QCheckBox *softwareTriggerCheckBox = new QCheckBox(tr("选择"));
    	QPushButton *softwareOncePushButton = new QPushButton(tr("终止"));
    	hlayout3->addWidget(softwareTriggerCheckBox);
    	hlayout3->addWidget(softwareOncePushButton);
    
    	QHBoxLayout *hlayout4 = new QHBoxLayout;
    	QCheckBox *detectionCheckBox = new QCheckBox(tr("检测"));
    	hlayout4->addWidget(detectionCheckBox);
    
    	QGridLayout *vlayout = new QGridLayout;
    	vlayout->addLayout(hlayout1, 0, 0);
    	vlayout->addLayout(hlayout2, 1, 0);
    	vlayout->addLayout(hlayout3, 2, 0);
    	vlayout->addLayout(hlayout4, 3, 0);
    
    	QWidget *tabCollection = new QWidget;
    	tabCollection->setLayout(vlayout);
    	ui.tabWidget->insertTab(1, tabCollection, QIcon("Resources\\a12.ico"), tr("采集"));//插入选项卡
    }
    
    void tabWidget::runPushButtonSlot()
    {
    	qDebug() << "第1个选项卡名称:" << ui.tabWidget->tabText(0);
    	QMessageBox::information(this, "第1个选项卡名称:", ui.tabWidget->tabText(0));//获取选项卡名称
    	startGrabbingPushButton->setStyleSheet("background-color: rgb(255, 100, 100);");
    }
    
    

    在这里插入图片描述

    在这里插入图片描述

    展开全文
  • Android中TabWidget的应用

    千次阅读 2019-08-13 19:09:15
    如果想实现采取第一种方式实现选项卡位于屏幕的下方,将布局方式为RelativeLayout,同时设置TabWidget的 android:layout_alignParentBottom="true"。 其他的一些方法: // 声明TabHost对象 TabHost xh_...
  • android移动开发总结关于TabWidget切换卡的实现应用
  • Android_TabHost_TabWidget选项卡总结
  • 仿谷歌浏览器的TabWidget,实现Tab右侧的增加按钮,Tab可拖出,拖动时缩略图显示。用VS2012开发
  • 在学习QT的时候,用ui做好表格的界面,最近学到用容器类操作tabwidget的方法。 放置tablewidget组件,编辑好每个界面的命名,如tablewidget_realState、tablewidget_devAddr等。 创建容器类,需要操作的时候,利用...
  • TabWidget实例

    2018-09-20 17:35:31
    TabWidget实例,多窗口组件实例,相关功能使用的实例.
  • Qt关于tabwidget的使用及注意事项

    万次阅读 多人点赞 2018-11-12 14:34:25
    Qt关于tabwidget的使用及注意事项 版本说明 版本 作者 日期 备注 0.1 loon 2018.11.12 初稿 目录 文章目录Qt关于tabwidget的使用及注意事项版本说明目录一、需求和目的二、了解QTabWIDget类及用法1、详细...
  • 本文实例讲述了Android切换卡TabWidget用法。分享给大家供大家参考,具体如下: Tab选项卡类似与电话本的界面,通过多个标签切换不同的内容,要实现这个效果,首先要知道TabHost,它是一个用来存放多个Tab标签的容器...
  • tabWidget.zip

    2021-08-05 13:23:27
    qt程序 tabWidget tab页左侧排列,文字横向排列
  • Qt中TabWidget控件获取tab索引遇到的问题 在Qt中常用的两个槽函数是:currentChanged(int index)和tabBarClicked(int index),这两个函数的意思是当当前tab改变时触发和当tab被点击时触发。 但是在上面这两个槽函数...
  • Tabwidget 设置页和获取

    千次阅读 2019-10-17 16:11:02
    QTabWidget tabWg = new QTabWidget(this); QWidget *Tab1 = new QWidget(); QWidget *Tab2 = new QWidget(); tabWg.addTab(Tab1, “Tab1”); tabWg.addTab(Tab2, “Tab2”); tabWg.setCurrentIndex(0);...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,310
精华内容 2,924
关键字:

tabwidget