dialog.h

  1. #ifndef DIALOG_H
  2. #define DIALOG_H
  3.  
  4. #include <QtWidgets/QDialog>
  5. #include <QtWidgets/QLabel>
  6. #include <QtWidgets//QLineEdit>
  7. #include <QtWidgets/QPushButton>
  8. #include <QtWidgets/QGridLayout>
  9. const static double PI = 3.1416;
  10. class Dialog : public QDialog
  11. {
  12. Q_OBJECT//启动Qt元对象系统(比如支持SIGNAL/SLOT)
  13.  
  14. public:
  15. Dialog(QWidget *parent = 0);
  16. ~Dialog();
  17.  
  18. private:
  19. QLabel *label1, *label2;
  20. QLineEdit *lineEdit;
  21. QPushButton *button;
  22.  
  23. private slots:
  24. void showArea();
  25. };
  26.  
  27. #endif // DIALOG_H

dialog.cpp

  1. #include "dialog.h"
  2.  
  3. Dialog::Dialog(QWidget *parent)
  4. : QDialog(parent)
  5. {
  6. label1 = new QLabel(this);
  7. label1->setText(QStringLiteral("请输入圆的半径:"));
  8.  
  9. lineEdit = new QLineEdit(this);
  10.  
  11. label2 = new QLabel(this);
  12. label2->setFrameStyle(QFrame::Panel | QFrame::Sunken);
  13.  
  14. button = new QPushButton(this);
  15. button->setText(QStringLiteral("显示对应圆的面积:"));
  16.  
  17. QGridLayout *mainLayout = new QGridLayout(this);
  18. mainLayout->addWidget(label1, 0, 0);
  19. mainLayout->addWidget(lineEdit, 0, 1);
  20. mainLayout->addWidget(label2, 1, 0);
  21. mainLayout->addWidget(button, 1, 1);
  22.  
  23. connect(button, SIGNAL(clicked()), this, SLOT(showArea()));
  24. //connect(lineEdit, SIGNAL(textChanged(QString)), this, SLOT(showArea()));
  25. }
  26.  
  27. Dialog::~Dialog()
  28. {
  29.  
  30. }
  31.  
  32. void Dialog::showArea()
  33. {
  34. bool ok;
  35. QString tempStr;
  36. QString valueStr = lineEdit->text();
  37. int valueInt = valueStr.toInt(&ok);
  38. double area = valueInt * valueInt * PI;
  39. label2->setText(tempStr.setNum(area));
  40. }

Qt5已经删除了setCodecxx,同样滥用tr的副作用也消除了。

在遇到中文时,可以用

  1. QStringLiteral

QtGui实现计算圆的面积的更多相关文章

  1. 用C语言计算圆的面积~!!!!!!!

    #include <stdio.h>void main(){ int a,b,c,y,g,f; printf("圆柱底面的半径,圆柱的高"); scanf(" ...

  2. 【Python】计算圆的面积

    代码: r=29 area = 3.1415*r*r print(area) print("{:.2f}".format(area)) 结果:

  3. 通过前台选择输入用来计算圆,三角形以及长方形的面积(此题目主要是while以及if 的使用)

    #!/bin/usr/env python#coding=utf-8'''完成一段简单的Python程序,用于实现计算圆面积,三角形面积,长方形面积'''flag=Truewhile flag: pi ...

  4. hdu 3264 09 宁波 现场 E - Open-air shopping malls 计算几何 二分 圆相交面积 难度:1

    Description The city of M is a famous shopping city and its open-air shopping malls are extremely at ...

  5. java代码。。。圆的面积好搞人。。。不是一般的搞人。。。欢迎指点指点

    package com.ll; public class Class3 {     private String name;     private int age;     private int ...

  6. 【C语言】输出半径1到10的圆的面积,当面积值超过100时,停止执行本程序

    #include<stdio.h> #define PI 3.142 int main() { int r; float area; ; r <= ; r++) { area = P ...

  7. C++编程计算图形的面积(圆、矩形)

    C++基础,while循环与if判断实现的计算图形面积 1 #include <iostream> 2 3 int main() { 4 while (true){ 5 int input ...

  8. c语言求平面上2个坐标点的直线距离、求俩坐标直线距离作为半径的圆的面积、递归、菲波那次数列、explode

    #include <stdio.h> #include <math.h> #include <string.h> char explode( char * str ...

  9. BZOJ2178: 圆的面积并(格林公式)

    题面 传送门 题解 好神仙-- 先给几个定义 平面单连通区域:设\(D\)是平面内一区域,若属于\(D\)内任一简单闭曲线的内部都属于\(D\),则称\(D\)为单连通区域.通俗地说,单连通区域是没有 ...

随机推荐

  1. Linux中du、df显示不一致问题

    Linux中du.df显示不一致问题 最近在做关于Q博士的项目的时候,用到了docker进行部署,对于后端服务可能会经常变动,于是将docker容器的jar包与宿主机目录下的jar包进行绑定,之后每次 ...

  2. ThinkPHP5——接入腾讯云短信API

    接入腾讯云短信API相当简单,最重要的是第一次使用腾讯云短信的话有100条免费短信可以测试,对于开发人员是足够了,下面我就教大家接入腾讯云短信. 第一步:准备工作 首先要在腾讯云短信申请短信签名与短信 ...

  3. 你不得不了解Helm 3中的5个关键新特性

    Helm是Kubernetes的一个软件包管理器.两个月前,它发布了第三个主要版本,Helm 3.在这一新版本中,有许多重大变化.本文将介绍我认为最关键的5个方面. 1. 移除了Tiller Helm ...

  4. eclipse中使用postgreSQL报错( Cannot load JDBC driver class )

    需求: 使用Maven插件调用PostgreSQL数据库 环境: eclipse_4.5.0+JDK_1.7+Tomcat_7.0+Maven+postgresql-9.1-901.jdbc4.jar ...

  5. UGUI源码之EventSystem

    今天研究下UGUI的源码,先从EventSystem入手.EventSystem是用来处理点击.键盘输入以及触摸等事件的. 1.BaseInputModule EventSystem开头声明了两个变量 ...

  6. Ansible配合Virtualenv安装配置

    Ansible的两种安装模式(Centos7) 1.Yum包管理安装 #yum -y install ansible 2.Git源代码安装[推荐] git clone https://github.c ...

  7. options请求(复杂请求)

    1.请求发送: HEAD. GET. POST2.请求头信息:    Accept    Accept-Language    Content-Language    Last-Event-ID    ...

  8. Linux下socket编程基本知识

    本文档主要讲解了Linux下socket编程的一些基本知识,主要包括套接字和字节序的概念,以及一些常用的结构体和函数. 本文是在网易云课堂学习过程中的记录,这个老师讲得很不错,推荐大家围观. Linu ...

  9. Windows 7原版映像中添加usb3.0驱动

    最近用软碟通制作了一个win7原版映像,但是在装新系统的时候发现了一个问题,进入安装界面后,显示没有找到驱动器,但是明明是差了U盘的,通过“shift+f12”调出命令行窗口,输入disk list命 ...

  10. 重写ThreadFactory方法和拒绝策略

    最近项目中要用到多线程处理任务,自然就用到了ThreadPoolTaskExecutor这个对象,这个是spring对于Java的concurrent包下的ThreadPoolExecutor类的封装 ...