• 9299阅读
  • 7回复

[讨论]Qt如何画一个四分之一的圆环 [复制链接]

上一主题 下一主题
离线wwx024
 

只看楼主 倒序阅读 楼主  发表于: 2013-04-17
Qt如何画一个四分之一的圆环?
离线jdwx

只看该作者 1楼 发表于: 2013-04-17
回 楼主(wwx024) 的帖子
画饼图?如果是可以参考:http://www.qtcn.org/bbs/read-htm-tid-53074.html
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线wwx024

只看该作者 2楼 发表于: 2013-04-17
不是饼图,是圆环,四分之一的圆环。
离线roywillow

只看该作者 3楼 发表于: 2013-04-17
回 2楼(wwx024) 的帖子
考虑使用painterpath
两个饼形图添加到一个path中,然后配合充填规则(什么oddFill之类的)
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线dbzhang800

只看该作者 4楼 发表于: 2013-04-18
引用第2楼wwx024于2013-04-17 22:37发表的  :
不是饼图,是圆环,四分之一的圆环。[图片]


直接画吧

  1. #!/usr/bin/env python
  2. # -*- coding: UTF-8 -*-
  3. from PyQt4.QtGui import *
  4. from PyQt4.QtCore import *
  5. import sys
  6. class Widget(QWidget):
  7.     def __init__(self, parent=None):
  8.         super(Widget, self).__init__(parent)
  9.     
  10.     def paintEvent(self, evt):
  11.         painter = QPainter(self)
  12.         painter.setBrush(Qt.cyan)
  13.         
  14.         p = QPainterPath()
  15.         p.moveTo(200, 100)
  16.         p.lineTo(200, 0)
  17.         p.arcTo(0, 0, 400, 400, 90, -90)
  18.         p.lineTo(300, 200)
  19.         p.arcTo(100, 100, 200, 200, 0, 90)
  20.         painter.drawPath(p)
  21. if __name__ == '__main__':
  22.     app = QApplication(sys.argv)
  23.     w = Widget()
  24.     w.resize(400, 400)
  25.     w.show()
  26.     app.exec_()

离线benbenmajia

只看该作者 5楼 发表于: 2013-04-18
两个圆叠加不就是了?如果着色的话
安然.....
离线xinqingfly

只看该作者 6楼 发表于: 2013-04-18
画两个扇形叠加,异或裁剪一下
菜鸟也是鸟
离线wwx024

只看该作者 7楼 发表于: 2013-04-18
回 4楼(dbzhang800) 的帖子
谢谢版主,成功了。
快速回复
限100 字节
 
上一个 下一个