博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
再学 GDI+[27]: TGPPen - 画笔样式 - SetDashStyle
阅读量:5817 次
发布时间:2019-06-18

本文共 1829 字,大约阅读时间需要 6 分钟。

  hot3.png

本例效果图:
26153258_yngK.gif

代码文件:

unit Unit1;interfaceuses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, StdCtrls, ExtCtrls;type  TForm1 = class(TForm)    ComboBox1: TComboBox;    procedure FormCreate(Sender: TObject);    procedure FormPaint(Sender: TObject);    procedure ComboBox1Change(Sender: TObject);  end;var  Form1: TForm1;implementation{$R *.dfm}uses GDIPOBJ, GDIPAPI, TypInfo;procedure TForm1.FormCreate(Sender: TObject);var  i: Integer;begin  for i := 0 to 5 do    ComboBox1.Items.Add(GetEnumName(TypeInfo(TDashStyle), i));  ComboBox1.ItemIndex := 0;end;procedure TForm1.FormPaint(Sender: TObject);var  g: TGPGraphics;  p: TGPPen;begin  g := TGPGraphics.Create(Canvas.Handle);  g.Clear($FFFFFFFF);  p := TGPPen.Create(aclLimeGreen, 10);  p.SetDashStyle(TDashStyle(ComboBox1.ItemIndex));  g.DrawLine(p, 0, 0, ClientWidth, ClientHeight);  p.Free;  g.Free;end;procedure TForm1.ComboBox1Change(Sender: TObject);begin  Repaint;end;end.
窗体文件:

object Form1: TForm1  Left = 0  Top = 0  Caption = 'Form1'  ClientHeight = 167  ClientWidth = 242  Color = clBtnFace  Font.Charset = DEFAULT_CHARSET  Font.Color = clWindowText  Font.Height = -11  Font.Name = 'Tahoma'  Font.Style = []  OldCreateOrder = False  Position = poDesktopCenter  OnCreate = FormCreate  OnPaint = FormPaint  PixelsPerInch = 96  TextHeight = 13  object ComboBox1: TComboBox    Left = 89    Top = 8    Width = 145    Height = 21    ItemHeight = 13    TabOrder = 0    Text = 'ComboBox1'    OnChange = ComboBox1Change  endend
画笔样式枚举的定义:

DashStyle = (  DashStyleSolid,      {指定实线}  DashStyleDash,       {指定由划线段组成的直线}  DashStyleDot,        {指定由点构成的直线}  DashStyleDashDot,    {指定由重复的划线点图案构成的直线}  DashStyleDashDotDot, {指定由重复的划线点点图案构成的直线}  DashStyleCustom      {指定用户定义的自定义划线段样式});TDashStyle = DashStyle;

转载于:https://my.oschina.net/hermer/blog/319671

你可能感兴趣的文章
HTTP/1.1与HTTP/1.0的区别
查看>>
cmake编译安装mysql
查看>>
网卡驱动和队列层中的数据包接收 !!
查看>>
我的友情链接
查看>>
unix环境编程学习-chapter 3 IO读写操作
查看>>
写一本书和找一本书
查看>>
朴素的UNIX之-调度器细节
查看>>
802.11a/b/g/n无线协议详解 802.11 无线认证和加密有什么区别 开放系统
查看>>
Executor多线程框架使用
查看>>
mkfs、dumpe2fs、tune2fs与磁盘预留空间
查看>>
linux查看CPU性能及工作状态的指令mpstat,vmstat,iostat,sar,top
查看>>
zabbix监控之mysql
查看>>
Hadoop (CDH4发行版)集群部署 (部署脚本,namenode高可用,hadoop管理)
查看>>
.net面试题集锦(2
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
linux运维人员常用150个命令汇总
查看>>
python ftp测试
查看>>
redhat 内核参数
查看>>
Apache的prefork模式和worker模式参数详解&apache 配置参数详解
查看>>