joint
发表于 2017-7-10 16:02:37
回复 15# haijie1223
看到了,厉害,感觉比我那个需求复杂多了。
咋就不能把我那个需求也做一下呢?这个只是赚点金币,我那个是付人民币的啊。
joint
发表于 2017-7-10 16:11:48
本帖最后由 joint 于 2017-7-10 16:30 编辑
回复 14# rikthhpgf2005
谢谢,刚才翻了些你的帖子,也是资深高手啊。
是否能帮忙做一下?可以付费。谢谢。
最近眼睛不行,帮助文件都看不清,字体设置到最大了还要拿个放大镜看,非常不方便。
(au3帮助文件的字体能不能把字号设置大些啊,已经选最大了还是看不清。)
joint
发表于 2017-7-10 16:22:38
本帖最后由 joint 于 2017-7-13 17:29 编辑
参考柱状图。
joint
发表于 2017-7-10 16:26:30
本帖最后由 joint 于 2017-7-10 18:07 编辑
回复 15# haijie1223
再看看这个能不能也翻译下
haijie1223
发表于 2017-7-10 17:34:50
回复 19# joint
请附上 QApplication 文件{:1_302:}
joint
发表于 2017-7-10 18:00:37
回复joint
请附上 QApplication 文件
haijie1223 发表于 2017-7-10 17:34 http://www.autoitx.com/images/common/back.gif
郁闷,找不到是从哪个地方下的了,好像只有这一个源码文件啊。
haijie1223
发表于 2017-7-10 18:02:12
回复 21# joint
因为这个调用了VC自己的库,不知道里面进行了什么算法。
yamakawa
发表于 2017-7-12 15:26:37
回复 22# haijie1223
借楼问下大神,,,先说明,俺gdi+是粉嫩粉嫩的新人。。
1.俺先画了楼主要求的同心圆,然后在上面画模拟雷达扫描的饼图,同心圆就没了。应该是因为_GDIPlus_GraphicsClear()请问怎么做?试着放两个画布,可是下面那个好像会被盖住,也是看不见。。。请原谅粉嫩新人的无知,怎么做比较好?
2.俺让雷达扫描饼图旋转起来了。。。可是会闪烁。。。怎么破?好像还是因为_GDIPlus_GraphicsClear()
haijie1223
发表于 2017-7-12 16:19:55
回复 23# yamakawa
放代码看下
yamakawa
发表于 2017-7-12 21:07:49
回复 24# haijie1223 #include <GUIConstantsEx.au3>
#include <MsgBoxConstants.au3>
#include <StaticConstants.au3>
#include <GDIPlus.au3>
#include <APIConstants.au3>
#include <WinAPIEx.au3>
AutoItSetOption("GUIOnEventMode", 1)
Global Const $psize = "500"
Global $pen1,$hBitmap1,$hBackbuffer1
Global $hBrush,$hBitmap2,$hBackbuffer2
Global $mGui = GUICreate("GDI+TEST 1", $psize + 20, $psize + 20)
Global $pic1 = GUICtrlCreatePic("", 10, 10, $psize, $psize)
Global $hpic1 = GUICtrlGetHandle($pic1)
Global $pic2 = GUICtrlCreatePic("", 10, 10, $psize, $psize)
Global $hpic2 = GUICtrlGetHandle($pic2)
GUISetOnEvent($GUI_EVENT_CLOSE, "_Exit")
GUISetState(@SW_SHOW)
_GDIPlus_Startup()
_gdi_first()
Sleep(1000)
_gdi_second()
;第一个画布画同心圆
Func _gdi_first()
Local $move = $psize / 20
Local $hGraphics1 = _GDIPlus_GraphicsCreateFromHWND($hpic1)
$hBitmap1 = _GDIPlus_BitmapCreateFromGraphics($psize, $psize, $hGraphics1)
$hBackbuffer1 = _GDIPlus_ImageGetGraphicsContext($hBitmap1)
_GDIPlus_GraphicsSetSmoothingMode($hBackbuffer1, 2)
_GDIPlus_GraphicsClear($hBackbuffer1, 0xFF000000 + 0x303030)
Local $pen1 = _GDIPlus_PenCreate(0x9C00FF00)
For $i = 0 To 9
_GDIPlus_GraphicsDrawEllipse ($hBackbuffer1, ($i) * $move, ($i) * $move, $psize - ($i) * 2 * $move, $psize - ($i) * 2 * $move, $pen1) ;draw the egg
Next
;画XY线
_GDIPlus_GraphicsDrawLine($hBackbuffer1, 0, $psize /2, $psize, $psize / 2, $Pen1)
_GDIPlus_GraphicsDrawLine($hBackbuffer1, $psize /2, 0, $psize / 2, $psize, $Pen1)
;草稿好了,绘图
_GDIPlus_GraphicsDrawImageRect($hGraphics1, $hBitmap1, 0, 0, $psize, $psize)
Sleep(20)
EndFunc;==>到此结束第一个画布
Func _gdi_second()
Local $hGraphics2 = _GDIPlus_GraphicsCreateFromHWND($hpic2)
$hBitmap2 = _GDIPlus_BitmapCreateFromGraphics("500", "500", $hGraphics2)
$hBackbuffer2 = _GDIPlus_ImageGetGraphicsContext($hBitmap2)
_GDIPlus_GraphicsSetSmoothingMode($hBackbuffer2, 2)
;~ $hBrush = _GDIPlus_LineBrushCreate(0, 0, $psize / 2, $psize / 2, 0xFFFFFFFF, 0xFFFF0000, 3);线性笔刷方向钉死后好像不闪烁了?
For $angel = 0 To 360
If $angel = 360 Then $angel = 0
;~ _GDIPlus_GraphicsClear($hBackbuffer2, 0xFFFFFFFF + 0x303030)
;~ _GDIPlus_GraphicsClear($hGraphics2, 0xFFFFFFFF + 0x303030)
;~ _GDIPlus_BrushDispose($hBrush)
If $angel > 180 And $angel < 360 Then
$hBrush = _GDIPlus_LineBrushCreate($psize / 2, $psize / 2, 250 - Cos($angel) * $psize / 2, 250 - Sin($angel) * $psize / 2, 0x9C00FF00, 0x9A000000, 3)
Else
$hBrush = _GDIPlus_LineBrushCreate($psize / 2, $psize / 2, 250+ Cos($angel) * $psize / 2, 250+ Sin($angel) * $psize / 2, 0x9C00FF00, 0x9A000000, 3)
EndIf
_GDIPlus_GraphicsFillPie ($hBackbuffer2, 0, 0, $psize, $psize,$angel,45, $hBrush) ;draw the egg
_GDIPlus_GraphicsDrawImageRect($hGraphics2, $hBitmap2, 0, 0, 500, 500)
_GDIPlus_BrushDispose($hBrush)
Next
EndFunc;==>到此结束第二个画布
While 1
Sleep(20)
WEnd
Func _Exit() ;
_GDIPlus_PenDispose($pen1)
_GDIPlus_BitmapDispose($hBitmap1)
_GDIPlus_BitmapDispose($hBitmap2)
_GDIPlus_Shutdown
GUIDelete($mGui)
Exit
EndFunc ;==>_Exit
好忧伤,,技术不够不知道咋办了
haijie1223
发表于 2017-7-13 00:07:15
回复 25# yamakawa
一直在画,却没有清理
chenxiaooo
发表于 2017-7-13 09:25:47
学习中 请稍后
yamakawa
发表于 2017-7-13 09:35:02
本帖最后由 yamakawa 于 2017-7-13 09:36 编辑
回复 26# haijie1223
清理了就把同心圆给弄没了。。。
;~ _GDIPlus_GraphicsClear($hGraphics2, 0xFFFFFFFF + 0x303030)
这个取消注释就不停闪。。。
chzj589
发表于 2017-7-13 16:17:47
参考柱状图。
joint 发表于 2017-7-10 16:22 http://www.autoitx.com/images/common/back.gif
不错,柱状图2
joint
发表于 2017-7-13 17:10:21
本帖最后由 joint 于 2017-7-13 17:24 编辑
回复 29# chzj589
你试试怎样才能堆积起来?就是每个竖条是由多个数据组成的。
我觉得au3画堆积柱状图和色块图应该都没问题,只是我刚接触,水平不行。
实际上把这个图放在ListView上差不多就是第二个表了。
页:
1
[2]
3
4
5
6
7
8
9
10
11