失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > Qt自定义文本输入框实现支持输入度分秒和度两种格式(简易无限制输入)

Qt自定义文本输入框实现支持输入度分秒和度两种格式(简易无限制输入)

时间:2019-04-23 08:55:18

相关推荐

Qt自定义文本输入框实现支持输入度分秒和度两种格式(简易无限制输入)

1.自定义文本输入框

#ifndef MYLINEEDIT_H#define MYLINEEDIT_H#include <QLineEdit>#include "ui_mylineedit.h"class MyLineEdit : public QLineEdit{Q_OBJECTpublic:MyLineEdit(QWidget *parent = 0);~MyLineEdit();private:void focusOutEvent(QFocusEvent *) Q_DECL_OVERRIDE;private:Ui::MyLineEdit ui;};#endif // MYLINEEDIT_H

void MyLineEdit::focusOutEvent(QFocusEvent *event){QLineEdit::focusOutEvent(event);QString curText = text();QString str = curText.replace(QStringLiteral("°"), ",").replace(QStringLiteral("′"), ",").replace(QStringLiteral("″"), "");QStringList listStr = str.split(",");if (listStr.size() != 3) return;bool isD = false, isF = false, isM = false;int d = listStr[0].toInt(&isD);int f = listStr[1].toInt(&isF);int m = listStr[2].toInt(&isM);if (!isD || !isF || !isM) return;setText(QString::number(d + f / 60.0 + m / 3600.0));}

2.提升QLineEdit

原文来自微信公众号"程序员成长日志",已经工作的程序员朋友可以关注下公众号“程序员成长日志”,分享日常工作中解决的问题即可赚取稿费,大家一起成长~

如果觉得《Qt自定义文本输入框实现支持输入度分秒和度两种格式(简易无限制输入)》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。