在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
TDirectDrawSurface.PokeLine(); TDirectDrawSurface.PokeLinePolar(); TDirectDrawSurface.PokeBox(); TDirectDrawSurface.PokeBlendPixel(); TDirectDrawSurface.PokeCircle(); TDirectDrawSurface.PokeEllipse(); TDirectDrawSurface.PokeFilledEllipse(); TDirectDrawSurface.PokeWuLine(); TDirectDrawSurface.PokeVLine(); TDirectDrawSurface.DoRotate(); 这些绘图命令都需要在 TDirectDrawSurface.Lock 和 TDirectDrawSurface.UnLock 之间进行, 并不是特别好用. 另外还有两个读写属性: Pixel 和 Pixels, 绘制时前者须在 Lock、UnLock 之间, 后者又不能锁定, 真是不完善. 本例只是个画线的例子, 运行效果图: 代码文件: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DXClass, DXDraws; type TForm1 = class(TForm) DXDraw1: TDXDraw; DXTimer1: TDXTimer; procedure FormCreate(Sender: TObject); procedure DXTimer1Timer(Sender: TObject; LagCount: Integer); end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin DXDraw1.Align := alClient; DXTimer1.Interval := 50; end; procedure TForm1.DXTimer1Timer(Sender: TObject; LagCount: Integer); var x1,y1,x2,y2: Integer; clr: TColor; begin x1 := Random(DXDraw1.Surface.Width); y1 := Random(DXDraw1.Surface.Height); x2 := Random(DXDraw1.Surface.Width); y2 := Random(DXDraw1.Surface.Height); clr := Random($FFFFFF); // DXDraw1.Surface.Fill(0); DXDraw1.Surface.Lock; DXDraw1.Surface.PokeLine(x1, y1, x2, y2, clr); DXDraw1.Surface.UnLock; DXDraw1.Flip; end; end. |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论