您的位置:68399皇家赌场 > 域名注册 > 68399皇家赌场:QTableWidget的美化

68399皇家赌场:QTableWidget的美化

发布时间:2020-01-12 07:35编辑:域名注册浏览(50)

    本人想达成的是:QTableWidget中悬停时退换边框QTableWidget::item:hover{border:1pxsolidmediumblue;border-radius:3px;}假如那样写,结果正是更改了本来的背景象,变成玉灰褐了。请问怎么写能够保险原背景象?我那样写未有完结本人的效益:QTableWidget::item:hover:#frame{border:1pxsolidmediumblue;border-radius:3px;}请各位指教!多谢!

     

    transition结合:after,:before完成动漫,transitionbefore

     

    div代码

    <div class='div'>
    hover
    </div>

     

    css代码

     

    .div{
    width:200px;
    height:100px;
    line-height: 100px;
    text-align: center;
    border-radius: 5px;
    background-color: #FEC171;
    transition: all 600ms ease;
    position: relative;
    }

    .div:hover{
    background-color: #fff;
    border-radius: 0;
    }
    .div:hover:before,.div:hover:after{
    width:100%;
    transition: all 600ms ease;
    background-color: #FEC171;
    }
    .div:before,.div:after{
    position: absolute;
    content:'';
    top:0;
    right:0;
    height:2px;
    width:0;
    transition: all 400ms ease
    }
    .div:after{
    right:inherit;
    top:inherit;
    left:0;
    bottom:0;
    }

     

     

    思路

    金玉满堂的是叁个divhover上去改动背景象,可是来得很清淡,并且尚未动漫的效应

    然后这一个代码是组成了伪类before跟after来完成before一条线,after一条线

    before那条线从左边出来

    after那条线从侧面出来的那样三个有动漫效果的认为

    金镶玉裹福禄双全的思绪正是用transition的过渡来实现的,当然上边包车型客车代码未有做合作

    before跟after的这条线都得以给一个相对定位然后看起来跟div的border同样的机能

    before是用相对定位在top:0,right:0那里,正是从right:0,width:0到width:百分之百的二个连缀的效用

    after是用相对定位在top:inherit,right:inherit,bottom:0,left:0这里就是从left:0,width:0到width:100%的三个连片的效果与利益

     

     

    恩恩 接待补充的哦

    div代码 div class='div' hover /div css代码 .div{ width:200px; height:100px; line-height: 100px; text-align: center...

     

    //成立及质量设置
    m_tableWidget = new QTableWidget(this);
    m_tableWidget->setRowCount(10);
    m_tableWidget->setColumnCount(3);
    //m_tableWidget->setFrameShape(QFrame::NoFrame卡塔尔; //设置边框
    //m_tableWidget->setShowGrid(falseState of Qatar; //设置不展现格子线
    //QPalette pll = m_tableWidget->palette();
    //pll.setBrush(QPalette::Base,QBrush(QColor(255,255,255,0)));
    //m_tableWidget->setPalette(pll);
    //m_tableWidget->horizontalHeader()->setStyleSheet("QHeaderView::section {background-color:lightblue;color: black;padding-left: 4px;border: 1px solid #6c6c6c;}");

    FriendTable->setFrameShape(QFrame::NoFrameState of Qatar;  //设置边框

    m_tableWidget->horizontalHeader()->setDefaultSectionSize(150);
    m_tableWidget->horizontalHeader(卡塔尔国->setClickable(false卡塔尔国; //设置表头不可点击(私下认可点击后拓宽排序)

    FriendTable->setHorizontalHeaderLabels(HeadListState of Qatar;  设置表头

    //设置表头内容
    QStringList header;
    header<<tr("Index")<<tr("Name")<<tr("Time");
    m_tableWidget->setHorizontalHeaderLabels(header);

    FriendTable->setSelectionMode(QAbstractItemView::SingleSelection卡塔尔;   设置接受的形式为单采纳

    //设置表头字体加粗
    QFont font = m_tableWidget->horizontalHeader()->font();
    font.setBold(true);
    m_tableWidget->horizontalHeader()->setFont(font);

    FriendTable->setSelectionBehavior(QAbstractItemView::SelectRows卡塔尔;    设置接收行为时每一回接受生龙活虎行

    m_tableWidget->horizontalHeader(State of Qatar->setStretchLastSection(true卡塔尔(قطر‎; //设置充满表宽度
    m_tableWidget->verticalHeader()->setResizeMode(QHeaderView::ResizeToContents);
    m_tableWidget->verticalHeader(State of Qatar->setDefaultSectionSize(10卡塔尔国; //设置行距
    m_68399皇家赌场,tableWidget->setFrameShape(QFrame::NoFrame卡塔尔; //设置无边框
    m_tableWidget->setShowGrid(falseState of Qatar; //设置不展现格子线
    m_tableWidget->verticalHeader(卡塔尔(قطر‎->setVisible(false卡塔尔国; //设置垂直头不可以知道
    m_tableWidget->setSelectionMode(QAbstractItemView::ExtendedSelection); //可多选(Ctrl、Shift、 Ctrl A都可以)
    m_tableWidget->setSelectionBehavior(QAbstractItemView::SelectRows卡塔尔国; //设置选取行为时每一次选取风度翩翩行
    m_tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers卡塔尔; //设置不可编辑
    m_tableWidget->horizontalHeader(State of Qatar->resizeSection(0,20State of Qatar; //设置表头第一列的宽窄为150
    m_tableWidget->horizontalHeader(卡塔尔(قطر‎->resizeSection(2,50); //设置表头第一列的上升的幅度为150
    m_tableWidget->horizontalHeader(卡塔尔(قطر‎->setFixedHeight(25卡塔尔国; //设置表头的冲天

    FriendTable->setShowGrid(falseState of Qatar;   设置不显得格子线

    //m_tableWidget->setStyleSheet("background: rgb(56,56,56卡塔尔(قطر‎;alternate-background-color:rgb(48,51,55卡塔尔(قطر‎;selection-background-color:qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 rgb(56,56,56卡塔尔(قطر‎,stop:1 rgb(76,76,76卡塔尔State of Qatar;"State of Qatar; //设置选中背景象
    //m_tableWidget->horizontalHeader()->setStyleSheet("QHeaderView::section{background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 rgb(46,46,46),stop:1 rgb(66,66,66));color: rgb(210,210,210);;padding-left: 4px;border: 1px solid #383838;}"State of Qatar; //设置表头背景观
    m_tableWidget->setAlternatingRowColors(true);
    m_tableWidget->setFocusPolicy(Qt::NoFocus卡塔尔; //去除选中虚线框

    FriendTable->setFont(font卡塔尔(قطر‎;   设置字体

    //设置水平、垂直滚动条样式
    //m_tableWidget->horizontalScrollBar()->setStyleSheet("QScrollBar{background:red; height:10px;}"
    // "QScrollBar::handle{background:lightgray; border:2px solid transparent; border-radius:5px;}"
    // "QScrollBar::handle:hover{background:gray;}"
    // "QScrollBar::sub-line{background:transparent;}"
    // "QScrollBar::add-line{background:transparent;}");
    //m_tableWidget->verticalScrollBar()->setStyleSheet("QScrollBar{background:red; width: 10px;}"
    // "QScrollBar::handle{background:lightgray; border:2px solid transparent; border-radius:5px;}"
    // "QScrollBar::handle:hover{background:gray;}"
    // "QScrollBar::sub-line{background:transparent;}"
    // "QScrollBar::add-line{background:transparent;}");
    /*QPalette pal;
    pal.setColor(QPalette::Base, QColor(255, 0, 0));
    pal.setColor(QPalette::AlternateBase, QColor(0, 255, 0));
    m_tableWidget->setPalette(pal);*/
    m_tableWidget->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
    m_tableWidget->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
    m_tableWidget->setAlternatingRowColors(true);
    m_tableWidget->setShowGrid(false);

    设置表单背景或晶莹

    QPalette pal = musicTable->palette();
        pal.setBrush(this->backgroundRole(),QBrush(QPixmap("images/background.png")) );
        musicTable->setPalette( pal );

    安装它的背景图片,也能够将QBrush最早化为QColor来设置背景颜色

    QPalette pll = musicTable->palette();

    本文由68399皇家赌场发布于域名注册,转载请注明出处:68399皇家赌场:QTableWidget的美化

    关键词: 68399皇家赌场 背景色 边框 不改变 白色