Qt4精彩实例分析笔记--各个位置信息
来源:互联网 发布:阿里云设置mx记录 编辑:程序博客网 时间:2024/06/06 09:02
按照Linux窗口程序设计—Qt4精彩实例分析动手自己弄了一下 一边仿照一边学习
写一写自己的笔记 自己的
代码
mainwindow.cpp
#include "mainwindow.h"#include <QApplication>int main(int argc, char *argv[]){ QFont font("ZYSong18030",12); QApplication::setFont(font); QApplication app(argc,argv); QTranslator translator(0); translator.load("geometry_zh","."); app.installTranslator(&translator); Geometry *g = new Geometry(); g->show(); return app.exec();}Geometry::Geometry(){ setWindowTitle(tr("Geometry")); //创建所需的各个控件 label1 = new QLabel; label1->setText("x():"); label2 = new QLabel; label2->setText("y():"); label3 = new QLabel; label3->setText("frameGeometry():"); label4 = new QLabel; label4->setText("pos():"); label5 = new QLabel; label5->setText("geometry():"); label6 = new QLabel; label6->setText("width():"); label7 = new QLabel; label7->setText("height():"); label8 = new QLabel; label8->setText("rect():"); label9 = new QLabel; label9->setText("size():"); xLabel = new QLabel; yLabel = new QLabel; frameGeoLabel = new QLabel; posLabel = new QLabel; geoLabel = new QLabel; widthLabel = new QLabel; heightLabel = new QLabel; rectLabel = new QLabel; sizeLabel = new QLabel; //布局 QGridLayout *layout = new QGridLayout(this); layout->setMargin(20); layout->setSpacing(10); int l = 0; int c = 1; layout->addWidget(label1,0,l); layout->addWidget(xLabel,0,c); layout->addWidget(label2,1,l); layout->addWidget(yLabel,1,c); layout->addWidget(label3,2,l); layout->addWidget(frameGeoLabel,2,c); layout->addWidget(label4,3,l); layout->addWidget(posLabel,3,c); layout->addWidget(label5,4,l); layout->addWidget(geoLabel,4,c); layout->addWidget(label6,5,l); layout->addWidget(widthLabel,5,c); layout->addWidget(label7,6,l); layout->addWidget(heightLabel,6,c); layout->addWidget(label8,7,l); layout->addWidget(rectLabel,7,c); layout->addWidget(label9,8,l); layout->addWidget(sizeLabel,8,c); updateLabel();}voidGeometry::updateLabel(){ QString temp; QString str_x; xLabel->setText(str_x.setNum(x()));//获得X()的函数结果并显示 QString str_y; yLabel->setText(str_y.setNum(y()));//获得y()的函数结果并显示 //获取frameGeometry()函数的结果并显示 QString frameGeo; frameGeo = temp.setNum(frameGeometry().x()) + ", " + temp.setNum(frameGeometry().y()) + ", " + temp.setNum(frameGeometry().width()) + ", " + temp.setNum(frameGeometry().height()); frameGeoLabel->setText(frameGeo); QString position ; //获取pos()函数的结果并显示 position = temp.setNum(pos().x()) + ", " + temp.setNum(pos().y()); posLabel->setText(position); QString geo; //获取geometry()函数的结果并显示 geo = temp.setNum(geometry().x()) + ", " + temp.setNum(geometry().y()) + ", " + temp.setNum(geometry().width()) + ", " + temp.setNum(geometry().height()); geoLabel->setText(geo); QString w; //获取width height的结果并显示 widthLabel->setText(w.setNum(width())); QString h; heightLabel->setText(h.setNum(height())); //获取rect()函数的结果并显示 QString r; r = temp.setNum(rect().x()) + ", " + temp.setNum(rect().y()) + ", " + temp.setNum(rect().width()) + ", " + temp.setNum(rect().height()); rectLabel->setText(r); //获取size()函数的结果并显示 QString s; s = temp.setNum(size().width()) + ", " + temp.setNum(size().height()); sizeLabel->setText(s);}voidGeometry::moveEvent(QMoveEvent *){ updateLabel();}voidGeometry::resizeEvent(QResizeEvent *){ updateLabel();}
mainwindow.h
#ifndef GEOMETRY_H#define GEOMETRY_H#include <QtGui>class Geometry : public QDialog{ Q_OBJECTpublic: Geometry(); //声明所需的控件 QLabel *label1; QLabel *label2; QLabel *label3; QLabel *label4; QLabel *label5; QLabel *label6; QLabel *label7; QLabel *label8; QLabel *label9; QLabel *xLabel; QLabel *yLabel; QLabel *frameGeoLabel; QLabel *posLabel; QLabel *geoLabel; QLabel *widthLabel; QLabel *heightLabel; QLabel *rectLabel; QLabel *sizeLabel; void updateLabel();protected: void moveEvent(QMoveEvent *); void resizeEvent(QResizeEvent *);};#endif // GEOMETRY_H
实验效果图:
- Qt4精彩实例分析笔记--各个位置信息
- Qt4精彩实例分析笔记--标准对话框的使用
- *PyQt4 精彩实例分析* 实例3 各类位置信息
- PyQt4 精彩实例分析* 实例3 各类位置信息
- linux窗口程序设计 Qt4精彩实例分析 pyqt实现 实例3 位置函数
- linux窗口程序设计 Qt4精彩实例分析 pyqt实现 实例47 获取本机网络信息
- linux窗口程序设计-Qt4精彩实例分析2
- linux窗口程序设计 Qt4精彩实例分析 pyqt实现 实例2 标准对话框的使用
- 关于ui的一些总结(参考Qt4精彩实例分析)
- PyQt4 精彩实例分析* 实例22 电子钟
- *PyQt4 精彩实例分析* 实例17 综合布局实例
- 【2013Esri开发者大会精彩看点】位置分析
- PyQt4 精彩实例分析* 实例1 Hello Kitty!
- PyQt4 精彩实例分析* 实例2 标准对话框的使用
- PyQt4 精彩实例分析* 实例4 使用标准输入框
- PyQt4 精彩实例分析* 实例6 实现QQ抽屉效果
- PyQt4 精彩实例分析* 实例7 表格的使用
- PyQt4 精彩实例分析* 实例8 使用进度条
- LA 3523 圆桌骑士
- FFmpeg 开发流程
- CFLAGS
- eclipse 设置字体大小
- 安全通信系统--OpenSSL的安装编译、证书生成
- Qt4精彩实例分析笔记--各个位置信息
- javascript 事件详解
- 哈哈,来看看北京。(注:这不是一篇技术博客)
- .NET c# Color对象的使用介绍(转)
- JQuery请求JSON数据
- python 中的字符串操作
- Evernote还是不错的
- Windows Phone 7 Button修改前景色和背景色的问题和解决办法
- 查看修改Linux时区和时间