QT 实现QWidget的滚动页面(滚屏效果)

QT滚动条功能开发

QT滚动条界面制作

如何实现在一个限定的窗口上动态的显示信息,可以采用滚动界面的形式进行。

如何进行布局

在这里插入图片描述
如图所示,灰色地方属于滚动界面区域,可以根据信息量的大小进行滚动扩展。

下面直接插入代码

为了防止违反公司关于代码规定,我这里只上传滚动条的功能开发,不上传相关业务功能开发。如果有疑问可以私聊我,谢谢。

头文件中添加:
#include
#include

private:
Ui::DlgStrangePolicyInput *ui;
QFrame pFrameUi;
QAxWidget
webWidget;
QLabel *pLabelTitle; //放置滚动页面
QLabel *pLabelGetInfo;//显示滚动信息
QScrollArea *scrollArea;//滚动页面
QScrollBar *scrollBar;//滚动条

cpp文件中,添加:
初始化函数:
initScroll()
{
//定义主窗口的大小,450*290
pFrameUi = new QFrame(this);
pFrameUi->setFixedSize(450,290);
pFrameUi->move(1,1);
pFrameUi->setStyleSheet(“background-color:rgba(255,255,255,1);”);
pFrameUi->setVisible(true);
//放置滚动界面
pLabelTitle = new QLabel(pFrameUi);
pLabelTitle->setFixedSize(400,140);
pLabelTitle->move(25,100);
pLabelTitle->setStyleSheet(“font:15px;background:transparent;rgb(50,151,251)”);
//设置显示滚动界面大小
scrollArea = new QScrollArea(pLabelTitle);
scrollArea->setGeometry(0, 0, 390, 140);//左上长宽
scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
// scrollArea->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);//隐藏竖向滚动条
scrollArea->setFrameShape(QFrame::NoFrame);
scrollArea->setStyleSheet( “width:8px; border-radius:2px;min-height:1;background:#FAFAFA”);
//设置实际滚动界面大小
widget = new QFrame(pLabelTitle);
widget->setContentsMargins(0, 0, 0, 0);
widget->setFixedSize(400, 25000);
widget->setStyleSheet( “background:#FAFAFA”);
//verticalScrollBar,设计滚动条的样式
scrollArea->verticalScrollBar()->setStyleSheet(“QScrollBar:vertical”
“{”
“width:6px;”
“background:rgba(0,0,0,0%);”
“margin:0px,0px,0px,0px;”
“padding-top:4px;”
“padding-bottom:4px;”
“}”
“QScrollBar::handle:vertical”
“{”
“width:6px;”
“background:rgba(0,0,0,25%);”
" border-radius:2px;"
“min-height:20;”
“}”
“QScrollBar::handle:vertical:hover”
“{”
“width:6px;”
“background:rgba(0,0,0,50%);”
" border-radius:2px;"
“min-height:20;”
“}”
“QScrollBar::add-line:vertical”
“{”
“height:9px;width:6px;”
“border-image:url(:/images/a/3.png);”
“subcontrol-position:bottom;”
“}”
“QScrollBar::sub-line:vertical”
“{”
“height:9px;width:6px;”
“border-image:url(:/images/a/1.png);”
“subcontrol-position:top;”
“}”
“QScrollBar::add-line:vertical:hover”
“{”
“height:9px;width:6px;”
“border-image:url(:/images/a/4.png);”
“subcontrol-position:bottom;”
“}”
“QScrollBar::sub-line:vertical:hover”
“{”
“height:9px;width:6px;”
“border-image:url(:/images/a/2.png);”
“subcontrol-position:top;”
“}”
);
scrollArea->setWidget(widget);
widget->setObjectName(“we”);
//pLabelGetInfo,显示信息界面样式
pLabelGetInfo = new QLabel(widget);
pLabelGetInfo->move(0,10);
pLabelGetInfo->setStyleSheet(“font:12px;background:transparent;”);
}

本人csdn的第一篇技术文档,为了提高自己的开发技能,希望大家多多指点和批评,共同学习
[1]: http://meta.math.stackexchange.com/questions/5020/mathjax-basic-tutorial-and-quick-reference
[2]: https://mermaidjs.github.io/
[3]: https://mermaidjs.github.io/
[4]: http://adrai.github.io/flowchart.js/

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Qt Designer是一个用于创建Qt界面的可视化设计工具。它提供了丰富的组件,方便用户进行界面设计。以下是一些常用的Qt Designer组件介绍: 1. List Widget:用于显示列表数据,支持单选或多选功能。 2. Tree Widget:用于显示树形数据,支持展开和折叠功能。 3. Table Widget:用于显示表格数据,可以编辑和排序数据。 为了将界面上的各个组件的分布设计得更加美观,可以使用一些容器类组件,例如: 1. Group Box:用作不同区块的容器,可以将相关的组件放在同一个分组中。 2. Scroll Area:提供滚动功能,当组件过多时可以滚动查看。 3. Tool Box:用于创建一个展开收起的工具箱,方便用户选择不同的工具。 4. Tab Widget:用作不同页的分页按钮,可以在不同的标签页中放置不同的组件。 5. Stacked Widget:类似于Tab Widget,但是只显示当前选中的页面。 6. Frame:用作容器,可以将相关组件放在一个矩形框中。 7. Widget:用作容器,可以将其他组件放在其中。 8. MDI Area:用于创建多文档界面应用程序,可以同时显示多个子窗口。 9. Dock Widget:可以将组件拖动到主窗口的边缘,并停靠在那里。 此外,Qt Designer还提供了各种输入组件,用于获取用户输入,例如文本框、下拉列表、复选框等。这些输入组件可以与其他组件结合使用,实现更丰富的用户交互。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值