《QT实用小工具·十六》IP地址输入框控件

1、概述
源码放在文章末尾

该项目为IP地址输入框控件,主要包含如下功能:

    1. 可设置IP地址,自动填入框。
    1. 可清空IP地址。
    1. 支持按下小圆点自动切换。
    1. 支持退格键自动切换。
    1. 支持IP地址过滤。
    1. 可设置背景色、边框颜色、边框圆角角度。

下面是demo演示:
在这里插入图片描述

项目部分代码如下所示:

#ifndef IPADDRESS_H
#define IPADDRESS_H/*** IP地址输入框控件* 1. 可设置IP地址,自动填入框。* 2. 可清空IP地址。* 3. 支持按下小圆点自动切换。* 4. 支持退格键自动切换。* 5. 支持IP地址过滤。* 6. 可设置背景色、边框颜色、边框圆角角度。*/#include <QWidget>class QLabel;
class QLineEdit;#ifdef quc
class Q_DECL_EXPORT IPAddress : public QWidget
#else
class IPAddress : public QWidget
#endif{Q_OBJECTQ_PROPERTY(QString ip READ getIP WRITE setIP)public:explicit IPAddress(QWidget *parent = 0);protected:bool eventFilter(QObject *watched, QEvent *event);private:QLabel *labDot1;    //第一个小圆点QLabel *labDot2;    //第二个小圆点QLabel *labDot3;    //第三个小圆点QLineEdit *txtIP1;  //IP地址网段输入框1QLineEdit *txtIP2;  //IP地址网段输入框2QLineEdit *txtIP3;  //IP地址网段输入框3QLineEdit *txtIP4;  //IP地址网段输入框4QString ip;         //IP地址QString bgColor;    //背景颜色QString borderColor;//边框颜色int borderRadius;   //边框圆角角度private slots:void textChanged(const QString &text);public://默认尺寸和最小尺寸QSize sizeHint() const;QSize minimumSizeHint() const;//获取和设置IP地址QString getIP() const;void setIP(const QString &ip);//清空void clear();//设置背景颜色void setBgColor(const QString &bgColor);//设置边框颜色void setBorderColor(const QString &borderColor);//设置边框圆角角度void setBorderRadius(int borderRadius);
};#endif // IPADDRESS_H

源码下载

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/595850.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt Creator 新建项目

&#x1f40c;博主主页&#xff1a;&#x1f40c;​倔强的大蜗牛&#x1f40c;​ &#x1f4da;专栏分类&#xff1a;QT❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 目录 一、使用 Qt Creator 新建项目 1、新建项目 2、选择项目模板 3、选择项目路径 4、选择构建系统 5…

23年蓝桥杯省赛 动态规划DP

动态规划 就是:给定一个问题&#xff0c;我们把它拆成一个个子问题&#xff0c;直到子问可以直接解决。然后把子问题的答案保存起来&#xff0c;以减少重量计算&#xff0c;再根据子问题答察反推&#xff0c;得出问解的一种方法。 题目&#xff1a; 这天&#xff0c;一只蜗牛…

Gopeed够快下载器支持全平台使用

介绍 Gopeed&#xff08;全称 Go Speed&#xff09;&#xff0c;直译过来中文名叫做够快下载器&#xff08;不是狗屁下载器&#xff01;&#xff09;&#xff0c;是一款由GolangFlutter开发的高速下载器&#xff0c;支持&#xff08;HTTP、BitTorrent、Magnet&#xff09;协议下…

C 练习实例97 - 读磁盘 写磁盘

题目&#xff1a;从键盘输入一些字符&#xff0c;逐个把它们送到磁盘上去&#xff0c;直到输入一个‘#’为止 在桌面新建一个hello.txt文件&#xff0c;内容示例&#xff1a; 代码&#xff1a; #include <stdio.h> #include <stdlib.h>int main() {FILE *fp; //文…

【论文笔记】MetaPruning: Meta Learning for Automatic Neural Network Channel Pruning

Abstract 提出了一种新颖的元学习方法&#xff0c;用于自动剪枝非常深的神经网络。首先训练一个称为PruningNet的元网络&#xff0c;该网络能够针对目标网络生成权重参数&#xff0c;以生成任何剪枝结构。使用简单的随机结构抽样方法来训练PruningNet。然后&#xff0c;应用进…

Scala第十八章节(Iterable集合、Seq集合、Set集合、Map集合以及统计字符个数案例)

Scala第十八章节 章节目标 掌握Iterable集合相关内容.掌握Seq集合相关内容.掌握Set集合相关内容.掌握Map集合相关内容.掌握统计字符个数案例. 1. Iterable 1.1 概述 Iterable代表一个可以迭代的集合, 它继承了Traversable特质, 同时也是其他集合的父特质. 最重要的是, 它定…

题目:串变换(蓝桥OJ 4360)

问题描述&#xff1a; 解题思路&#xff1a; 题目说可以挑选任意个操作&#xff0c;因此我们枚举全部的子集。题目说以任意顺序执行&#xff0c;因此我们枚举每种子集的全排列。如果存在一种子集的一种排列可以使s变成t就返回yes并结束&#xff0c;反之&#xff0c;遍历完全部没…

Java 哈希表

一、哈希表的由来 我们的java程序通过访问数据库来获取数据&#xff0c;但是当我们对数据库所查询的信息进行大量分析后得知&#xff0c;我们要查询的数据满足二八定律&#xff0c;一般数据库的数据基本存储在磁盘当中。这使得每次查询数据将变得无比缓慢。为此我们可以将经常…

leetcode代码记录(第一个出现两次的字母

目录 1. 题目&#xff1a;2. 我的代码&#xff1a;小结&#xff1a; 1. 题目&#xff1a; 给你一个由小写英文字母组成的字符串 s &#xff0c;请你找出并返回第一个出现 两次 的字母。 注意&#xff1a; 如果 a 的 第二次 出现比 b 的 第二次 出现在字符串中的位置更靠前&…

【随笔】Git 高级篇 -- 分离 HEAD(十一)

&#x1f48c; 所属专栏&#xff1a;【Git】 &#x1f600; 作  者&#xff1a;我是夜阑的狗&#x1f436; &#x1f680; 个人简介&#xff1a;一个正在努力学技术的CV工程师&#xff0c;专注基础和实战分享 &#xff0c;欢迎咨询&#xff01; &#x1f496; 欢迎大…

【unity小技巧】unity最完美的CharacterController 3d角色控制器,实现移动、跳跃、下蹲、奔跑、上下坡、物理碰撞效果,复制粘贴即用

最终效果 文章目录 最终效果前言为什么使用CharacterControllerSimpleMove和Move如何选择&#xff1f;1. SimpleMove2. Move 配置CharacterController参数控制相机移动跳跃方式一方式二 下蹲处理下坡抖动问题实现奔跑和不同移速控制完整代码补充&#xff0c;简单版本 实现物理碰…

很详细的单应矩阵分解R、t过程

很详细的单应矩阵分解R、t过程 附赠自动驾驶学习资料和量产经验&#xff1a;链接 已有多种方法将单应矩阵H分解为R、t&#xff0c;在《Deeper understanding of the homography decomposition for vision-based control》一文中介绍了三种方法&#xff1a; O. Faugeras and F.…