首页 > 其他分享 >Qt,提升QLabel

Qt,提升QLabel

时间:2024-10-12 09:44:28浏览次数:8  
标签:Qt show void MyVideo pen 提升 include QLabel

 

QLabel不能满足我的需求,需要提升QLabel为自己封装的类

 

在UI中,拉一个QLabel出来,鼠标右键点击QLabel,选择【提升为】,然后填写自己的类。

 

需要注意的是,提升后QLabel需要show一下,不然显示不出来

 

#ifndef MYVIDEO_H
#define MYVIDEO_H

#include <QLabel>
#include <QWidget>
#include <QPaintEvent>
#include <QMouseEvent>
#include <QMessageBox>
#include <QPainter>
#include <QPaintEvent>
#include <QDebug>

class MyVideo : public QLabel
{
    Q_OBJECT
public:
    MyVideo(QWidget*parent=nullptr);
    ~MyVideo();

    void paintEvent(QPaintEvent* e);
    void mousePressEvent(QMouseEvent* e);
};

#endif // MYVIDEO_H

 

#include "myvideo.h"

MyVideo::MyVideo(QWidget* parent):QLabel(parent)
{
    // setStyleSheet("background-color:red");

    // 需要show一下,不然显示不出来
    show();
}

MyVideo::~MyVideo()
{

}

void MyVideo::paintEvent(QPaintEvent *e)
{
    QPainter p(this);

    QPen pen;
    pen.setColor(Qt::red);
    pen.setWidth(10);
    p.setPen(pen);

    p.drawLine(10,10,100,100);
}

void MyVideo::mousePressEvent(QMouseEvent *e)
{
    QMessageBox::information(nullptr, "123", "123");
    // qDebug() << "123";
}

 

标签:Qt,show,void,MyVideo,pen,提升,include,QLabel
From: https://www.cnblogs.com/shiyixirui/p/18459864

相关文章

  • Qt监听Windows锁屏、解锁、休眠、唤醒、登录、注销消息
    环境:Windows11笔记本,其它环境未测试根据其它博客的直接在窗口nativeEvent中监听WM_WTSSESSION_CHANGE会话消息和WM_POWERBROADCAST电源消息发现不起作用,查阅尝试后找到可行方法如下:会话事件和电源消息都需要先用WindowsAPI注册窗口句柄voidMainWindow::registerSys......
  • Qt初识_通过代码创建hello world
    个人主页:C++忠实粉丝欢迎点赞......
  • 最新Qt6将可执行文件打包为独立exe保姆级教学!含报错:无法定位程序输入点于动态链接库解
     相信大家都有类似的体验,自己已经在Qt练习中写出了不错的小程序,每次想发给别人体验都要发一整个大代码包,还得对面有对应的装好的QT才能运行,或者是想把自己的成果记录下来作为一个单独的exe文件却没有办法,今天教大家Qt如何生成独立可执行exe。注意:以下是Qt6之前版本可用的全过......
  • Linux下以编译源码的方式安装Qt5与Qt6及其使用
    文章目录概要资源下载依赖安装编译Qt5Qt6遇到的问题qtchooser使用概要自Qt5.15开始,不再提供opensourceofflineinstallers,也就是原来的.run的安装文件,只能通过源码编译来安装了参考文章资源下载源码网址,链接为Qt的资源,根据自己选择下载例如#下载源码......
  • 用四个场景案例,分析使用大模型对程序员工作的帮助提升
    引言随着人工智能技术的不断发展,大模型在软件开发中的应用越来越广泛。这些大模型,如GPT、文心一言、讯飞星火、盘古大模型等,可以帮助程序员提高工作效率,加快开发速度,并提供更好的用户体验。本文将介绍我在实际工作中经常使用大模型的三个场景,展示如何在程序员的工作中使......
  • 找到你的编程“秘密武器”:提升工作效率的工具分享
    在如今竞争激烈、任务繁忙的工作环境中,开发者们始终在寻找能够提高效率的编程工具。无论是智能的代码编辑器,强大的版本控制工具,还是帮助自动化日常工作流程的脚本,正确的工具能让开发工作变得更加轻松,并大幅提升生产力。在这篇文章中,我们将分享几款广受好评的编程工具,帮助你在开......
  • 【Qt】详细Qt基础 (包括自定义控件)
    目录QT概述创建项目项目文件(.pro)main.cppmainwindow.uimainwindow.hmainwindow.cpp窗口类QWidget窗口显示QDialog窗口QPushButton创建显示对象树基本概念功能坐标体系控件ItemWidgetsQListWidgetQTreeWidgetQTableWidget自定义控件QT概述模块功能QtCore......
  • QT定时器+事件捕获
    QT定时器类定时器类的使用主要包括定时和启动两个步骤。要使用OTimer类,需要引用头文件:#include<QTimer>QTimer类常用的成员函数有(1)voidstart(std::chrono::milisecondsmsec):启动定时器,参数为定时时间(单位为毫秒),如:        QTimermyTimer;        ......
  • MQTT
    安装服务端EMQX客户端MQTTXJava集成SrpingBootpom.xml<dependency><groupId>org.springframework.integration</groupId><artifactId>spring-integration-mqtt</artifactId></dependency><dependency><groupId&g......
  • Qt - 将窗体变为顶层窗体
    1、将窗体变为顶层窗体(activateWindow();和raise())我们知道,在windows上通过鼠标双击某应用程序图标,该应用程序往往会以顶层窗口的形式呈现在我们面前,但是对于一个已经打开的非顶层窗口,我们怎么将其激活为顶层窗口呢?       要达到激活,这个必须要满足两个条件,第一,必须......