QT中TextEdit实现控制台显示效果

10 篇文章 0 订阅
本文介绍了如何在QT界面中使用QTextEdit组件模拟控制台输出的效果,包括设置最大消息数量、使用等宽字体以及保持光标在最新消息处。通过设置document的最大块数实现新消息始终在底部显示,使用楷体作为字体以获得整齐的显示,并通过insertPlainText插入和moveCursor调整光标位置,确保用户可以查看历史消息并使用滑轮滚动。
摘要由CSDN通过智能技术生成

写QT软件的小伙伴可能遇到过类似的需求,将软件运行过程中的产生的信息在界面上进行显示,且达到类似控制台输出信息的效果,即最新的消息出现在最下面一行,且可以看到之前一定数量的消息,且有滑轮可以拖动,cmd控制台中的一定数量设置的比较大,QT中可以自行设置,现在给大家分享一下QT中如何实现类似的效果。



!!!!Copy大法好啊,大家注意中间的注释哦,最后两行应该是设置在显示函数中的!!!

#include <QTextEdit>

void GetCmdEffect(QTextEdit *output){                       //output即为ui界面上的TextEdit组件对象
    output->document()->setMaximumBlockCount(150);          //输出框中可存储的消息数,现在为存储150行消息数,
                                                            //可自行设置,设置了这一行即达到了最新消息在最后一行显示的效果

    output->setFontFamily("楷体");                          //为什么CMD中的显示看起来非常整齐呢?因为使用了等宽字体,
                                                            //等宽字体包括楷体、黑体等,根据自己的需要设置吧

    output->insertPlainText("你要显示在界面上的内容!");       //这里可以将光标挪到消息的最后面,完整的实现了控制台聚焦在最新消息的效果
    output->moveCursor(QTextCursor::End);                   //一般用在显示消息的函数中,且放在显示消息的语句后
}

这么点东西我当时还是搜了好一会儿……QT的界面编程真的很神奇,很多有意思的组件,有机会都可以试试!

最后,有帮助的话可以给我一丢丢赞赏嚯!(记得备注CSDN,我会更有动力更新文章嚯!)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值