当前位置: 首页 > news >正文

乒乓球网站怎么做无极商城网站建设

乒乓球网站怎么做,无极商城网站建设,嵊州市网站建设,企业信息系统的分类CAD 一.前言二.界面设计三.提升类四.接受槽函数五.实现图形action1.矩形2.椭圆3.圆形4.三角形5.梯形6.直线7.文本 六.总结 一.前言 用我们上节课刚刚学过的GraphicsView架构来绘制一个可以交互的CAD项目! 效果图: 二.界面设计 添加2个工具栏 需要蔬菜的dd我! 添加action: … CAD 一.前言二.界面设计三.提升类四.接受槽函数五.实现图形action1.矩形2.椭圆3.圆形4.三角形5.梯形6.直线7.文本 六.总结 一.前言 用我们上节课刚刚学过的GraphicsView架构来绘制一个可以交互的CAD项目! 效果图: 二.界面设计 添加2个工具栏 需要蔬菜的dd我! 添加action: 拖放界面: 设置一些基本的属性: 三.提升类 自定义一个类,继承QGraphicsView 找到鼠标和键盘事件. 添加信号和鼠标事件和键盘事件: 鼠标事件和键盘事件的重写,功能就是发出信号带出视图坐标: mygraphicsview.cpp中 #include mygraphicsview.h #include QMouseEventMyGraphicsView::MyGraphicsView(QWidget *parent) : QGraphicsView(parent) {}void MyGraphicsView::keyPressEvent(QKeyEvent *event) {emit keyPress(event);QGraphicsView::keyPressEvent(event); }void MyGraphicsView::mousePressEvent(QMouseEvent *event) {if(event-button()Qt::LeftButton){QPoint pointevent-pos();emit mousePress(point);}QGraphicsView::mousePressEvent(event); }void MyGraphicsView::mouseDoubleClickEvent(QMouseEvent *event) {if(event-button()Qt::LeftButton){QPoint pointevent-pos();emit mouseDoubleClick(point);}QGraphicsView::mouseDoubleClickEvent(event); }void MyGraphicsView::mouseMoveEvent(QMouseEvent *event) {QPoint pointevent-pos();emit mouseMove(point);QGraphicsView::mouseMoveEvent(event); }类提升 四.接受槽函数 用这个命名格式可以自动关联哦 想做个空实现,不然运行会报错,上面这些都是前面我们讲过的,就不细讲了,接下来进行这节课的重点. 创建场景: 五.实现图形action 1.矩形 void MainWindow::on_actionRect_triggered() {QGraphicsRectItem*itemnew QGraphicsRectItem(-100,-50,200,100);item-setFlags(QGraphicsItem::ItemIsSelectable|QGraphicsItem::ItemIsMovable|QGraphicsItem::ItemIsFocusable);item-setBrush(QBrush(Qt::blue));item-setZValue(ZVaule);//堆叠的等级,越高越在表面,z的高度item-setData(ITEMID,itemID);//可以为图形项自定义数据item-setData(ITEMINFO,矩形);item-setPos(qrand()%50,qrand()%50);//在坐标附近生成图形项scene-addItem(item);scene-clearSelection();//清空选择的item-setSelected(true);//添加的设置选中 }在构造函数中加一个随机种子: 在头文件中加 运行结果: 2.椭圆 void MainWindow::on_actionEllisp_triggered() {QGraphicsEllipseItem*itemnew QGraphicsEllipseItem(-100,-50,200,100);item-setFlags(QGraphicsItem::ItemIsSelectable|QGraphicsItem::ItemIsMovable|QGraphicsItem::ItemIsFocusable);item-setBrush(QBrush(Qt::green));item-setZValue(ZVaule);//堆叠的等级,越高越在表面,z的高度item-setData(ITEMID,itemID);//可以为图形项自定义数据item-setData(ITEMINFO,椭圆);item-setPos(qrand()%50,qrand()%50);//在坐标附近生成图形项scene-addItem(item);scene-clearSelection();//清空选择的item-setSelected(true);//添加的设置选中 }运行结果: 3.圆形 void MainWindow::on_actionCircle_triggered() {QGraphicsEllipseItem*itemnew QGraphicsEllipseItem(-100,-50,200,200);item-setFlags(QGraphicsItem::ItemIsSelectable|QGraphicsItem::ItemIsMovable|QGraphicsItem::ItemIsFocusable);item-setBrush(QBrush(Qt::yellow));item-setZValue(ZVaule);//堆叠的等级,越高越在表面,z的高度item-setData(ITEMID,itemID);//可以为图形项自定义数据item-setData(ITEMINFO,圆形);item-setPos(qrand()%50,qrand()%50);//在坐标附近生成图形项scene-addItem(item);scene-clearSelection();//清空选择的item-setSelected(true);//添加的设置选中 }运行结果: 4.三角形 void MainWindow::on_actionSanjiao_triggered() {QGraphicsPolygonItem*itemnew QGraphicsPolygonItem;QPolygonF points;points.append(QPoint(0,-80));points.append(QPoint(-50,0));points.append(QPoint(50,0));item-setPolygon(points);item-setFlags(QGraphicsItem::ItemIsSelectable|QGraphicsItem::ItemIsMovable|QGraphicsItem::ItemIsFocusable);item-setBrush(QBrush(Qt::darkRed));item-setZValue(ZVaule);//堆叠的等级,越高越在表面,z的高度item-setData(ITEMID,itemID);//可以为图形项自定义数据item-setData(ITEMINFO,三角形);item-setPos(qrand()%50,qrand()%50);//在坐标附近生成图形项scene-addItem(item);scene-clearSelection();//清空选择的item-setSelected(true);//添加的设置选中 }运行结果: 5.梯形 void MainWindow::on_actionTixing_triggered() {QGraphicsPolygonItem*itemnew QGraphicsPolygonItem;QPolygonF points;points.append(QPoint(-50,-50));points.append(QPoint(-100,100));points.append(QPoint(100,100));points.append(QPoint(50,-50));item-setPolygon(points);item-setFlags(QGraphicsItem::ItemIsSelectable|QGraphicsItem::ItemIsMovable|QGraphicsItem::ItemIsFocusable);item-setBrush(QBrush(Qt::darkGreen));item-setZValue(ZVaule);//堆叠的等级,越高越在表面,z的高度item-setData(ITEMID,itemID);//可以为图形项自定义数据item-setData(ITEMINFO,梯形);item-setPos(qrand()%50,qrand()%50);//在坐标附近生成图形项scene-addItem(item);scene-clearSelection();//清空选择的item-setSelected(true);//添加的设置选中 }运行结果: 6.直线 void MainWindow::on_actionLine_triggered() {QGraphicsLineItem*itemnew QGraphicsLineItem(-100,-100,100,100);item-setFlags(QGraphicsItem::ItemIsSelectable|QGraphicsItem::ItemIsMovable|QGraphicsItem::ItemIsFocusable);QPen pen;pen.setWidth(4);pen.setColor(Qt::red);item-setPen(pen);item-setZValue(ZVaule);//堆叠的等级,越高越在表面,z的高度item-setData(ITEMID,itemID);//可以为图形项自定义数据item-setData(ITEMINFO,直线);item-setPos(qrand()%50,qrand()%50);//在坐标附近生成图形项scene-addItem(item);scene-clearSelection();//清空选择的item-setSelected(true);//添加的设置选中 }运行结果: 7.文本 void MainWindow::on_actionText_triggered() {QString strQInputDialog::getText(this,输入文本,请输入文本:);QGraphicsTextItem*itemnew QGraphicsTextItem(str);item-setFlags(QGraphicsItem::ItemIsSelectable|QGraphicsItem::ItemIsMovable|QGraphicsItem::ItemIsFocusable);QFont font;font.setBold(true);font.setPixelSize(30);item-setFont(font);item-setDefaultTextColor(Qt::red);//设置默认文本颜色item-setZValue(ZVaule);//堆叠的等级,越高越在表面,z的高度item-setData(ITEMID,itemID);//可以为图形项自定义数据item-setData(ITEMINFO,文本);item-setPos(qrand()%50,qrand()%50);//在坐标附近生成图形项scene-addItem(item);scene-clearSelection();//清空选择的item-setSelected(true);//添加的设置选中 }运行结果: 六.总结 因时间有限,我们先完成一半! 图形项的添加基本一致. 先创建一个图形项设置标识,可以移动设置画刷或者画笔设置堆叠等级设置数据随机设置位置创建添加图形项清空原来的选择设置现在添加的选择 一生摘叶,不知寻根!
http://www.hkea.cn/news/14515194/

相关文章:

  • 黔东南网站建设河北青山建设集团有限公司网站
  • 温州知名网站推广企业服务账号怎么查询
  • 免费自建手机网站野望王维
  • 域名访问网站慧聪网怎样做网站友情链接
  • 阿里巴巴怎么做公司网站免费做自我介绍网站
  • 虎林网站建设成立公司怎么取名
  • 交互网站开发培训做网站犯法了 程序员有责任吗
  • 公司在兰州要做网站怎样选择互联网营销推广服务商
  • 重庆建设银行官方网站首页做采集网站难不
  • 网站开发用什么工具好微信自动加人软件免费
  • 随县住房和城乡建设局网站爱站网排名
  • 南京建设工程质量监督站网站济南企业做网站
  • 网站开发的关键技术有哪些iis网站属性没有asp.net
  • 怎么做网站版面查备案网站备案
  • 湖北省建设银行网站6php开发工具
  • 优秀的网站建设价格苏州网站建设-中国互联
  • 平面设计的网站有哪些网站怎样用代码制作网站
  • 做网站刷QQ会员网站沈阳做网络推广的公司
  • 响应式网站空间服务器要求怎么注册地理位置
  • 南通网站定制企业硬件开发一站式平台
  • 东莞网络网站建设靓号网建站
  • 如何自建网站入口启动互联全网营销推广
  • 企业网站建设一般要素包括哪些php工程师
  • 国家电网网站制作第一次做ppt怎么弄
  • 信阳市网站建设公司网站建设的基本需求有哪些
  • 重庆网站建设招标架构图在什么网站可以做
  • 酉阳网站建设宁波高端网站设计公司
  • 房产网站排行榜收录查询代码
  • 合肥网站 技术支持 上诚科技wordpress 新浪微博插件
  • 工程信息网站排名电脑版微信登录入口