QTextEdit控件使用

QTextEdit *mpContentTextEdit = new QTextEdit(this);

//设置占位符文本
mpContentTextEdit->setPlaceholderText(tr("Placeholder text"));

//设置关联控件,用于QTextEdit控件捕获MouseButtonPress等事件
QWidget *mpContentWidget = mpContentTextEdit->viewport();

//设置事件过滤器
mpContentTextEdit->installEventFilter(this);
mpContentWidget->installEventFilter(this);

//QTextEdit处理占位符及事件
bool eventFilter(QObject *obj, QEvent *pEvent)
{
    if (obj == mpContentTextEdit)
    {
        if (pEvent->type() == QEvent::FocusIn)
        {
            //清空编辑框默认占位符
            mpContentTextEdit->setPlaceholderText("");
        }
        else if (pEvent->type() == QEvent::FocusOut)
        {
            //设置编辑框默认占位符
            mpContentTextEdit->setPlaceholderText(tr("Placeholder text"));
        }
    }

    if ((((QKeyEvent *)pEvent)->key() == Qt::Key_Tab || pEvent->type() == QEvent::MouseButtonPress)
        && mpContentWidget->hasFocus())
    {
        //通过关联控件,可间接拦截编辑框鼠标等事件操作
        mpContentTextEdit->setText("");
    }

    return QDialog::eventFilter(obj, pEvent);
}
时间: 2024-12-14 05:23:52

QTextEdit控件使用的相关文章

QT—QTextEdit控件显示日志

功能:利用QTextEdit开发一个日志显示窗口.没有太多操作,需要实现的是日志自动向上滚动,总体的日志量可以控制在x行(比如300行)以内:其他的应用功能我后面继续添加 1 #include <QTextBlock> 2 3 #include <QTextEdit> 4 5 #include <QDebug> 6 7 #include <QTextCursor> 8 9 10 11 QString text; 12 13 text = "1111

qt ui界面控件布局设计

1.布局控件简介: 水平布局,里面的控件将水平展示,布局器里面的控件大小若没有固定,其大小将随着布局的大小而自动拉伸.可以通过设置其左(layoutLeftMargin).上(layoutTopMargin).右(layoutRightMargin).下边距(layoutBottomMargin)来调整里面控件相对于布局的边距,控件之间的宽度可以通过layoutSpacing属性进行设定.在Qt Designer里,可以先拖拽控件至窗口中,然后进行点击水平.垂直布局等实现布局,也可以先拖拽布局,

Qt常用控件+事件+基础绘图(四)

第一个Qt程序新建一个空的项目.pro文件内容示例代码:  1 /* 应用程序抽象类 */ 2 #include <QApplication> 3 #include <QWidget> 4 #include <QPushButton> 5 #include <QDebug> 6  7 int main(int argc, char *argv[]) 8 { 9     QApplication app(argc, argv);10 11     QWidge

自定义控件时-添加多个控件到一组中

dmwidgetinterface.h 1 #ifndef _DM_WIDGET_INTERFACE_H_ 2 #define _DM_WIDGET_INTERFACE_H_ 3 4 5 #include <QDesignerCustomWidgetInterface> 6 7 8 // DM自定义控件 9 class DmWidgetInterface : public QObject, public QDesignerCustomWidgetInterface 10 { 11 Q_OBJE

[译]- 6-1 排列窗体上的控件(Laying Out Widgets on a Form)

 排列窗体上的控件(Laying Out Widgets on a Form) 中英文对照:form(窗体),layout(布局或者排列,意思是进行窗体上控件的排列的过程,如大小位置等) absolute positioning(绝对位置定位),manual layout(手工布局), layout managers(布局管理器) Qt中有三种方式对窗体上的控件进行布局管理:绝对位置定位(absolute positioning),手工布局(manual layout),布局管理器(layout

Qt入门之常用qt控件认知之QLineEdit

QLineEdit是继QLabel和QAbstractButton之后最为常见的输入类编辑控件.顾名思义,其是单行编辑控件,经常用于编辑简短的信息,如用户登录信息及密码输入等.作为编辑框其具有常见的编辑动作,如清除内容clear,复制copy,剪切cut,粘贴paste,重做rudo.撤销undo,全选selectAll及设置编辑信息setText及删除dselete和del及backspace.根据编辑的内容及显示,QLineEdit有不同的显示模式:QLineEdit:::Normal 正常

Qt基本控件及三大布局

Qt基本控件及三大布局 来源: http://blog.csdn.net/a2604539133/article/details/73920696 Qt基本模块 一.Qt的三大布局 QHBoxLayout: 水平显示布局,所有在其上面摆放的控件只能水平排列下去: QVBoxLayout:  垂直显示布局,所有在其上面摆放的控件只能垂直排列下去: QGridLayout  格子显示布局,可以按照表格的形式显示布局: 二.Qt的控件 label:标签,可以显示文本信息,只读: pushbutton

6控件

概念: Qwidget:所有窗口及窗口控件都是从QWidget直接或间接派生出来的. 在Qt中创建对象的时候会提供一个Parent对象指针,下面来解释这个parent到底是干什么的. ?   QObject是以对象树的形式组织起来的. ?   当你创建一个QObject对象时,会看到QObject的构造函数接收一个QObject指针作为参数,这个参数就是 parent,也就是父对象指针. 这相当于,在创建QObject对象时,可以提供一个其父对象,我们创建的这个QObject对象会自动添加到其父

二、Qt常用控件

#ifndef MYWIDGET_H #define MYWIDGET_H #include <QWidget> #include <QTextEdit> class MyWidget : public QWidget { Q_OBJECT public: explicit MyWidget(QWidget *parent = 0); QTextEdit* _edit; signals: public slots: void slotComboBoxIndexChanged(con