canvas教程

delphi开发经验技巧...

字号+ 作者:H5之家 来源:H5之家 2016-12-24 14:02 我要评论( )

Delphi实用技巧经验(图文)‘’空‘’空格空格调整对齐方式窗体的visible属性设置相当于showmodalaq一行一行执行,所以要把一些语句写在循环里(除了在grid添加数

相关热词搜索:

篇一:Delphi实用技巧经验(图文)

‘’空 ‘ ’空格

空格调整对齐方式

窗体的visible属性设置相当于showmodal

aq一行一行执行,所以要把一些语句写在循环里(除了在grid添加数据)

Caption,Text:显示名 Name:系统名

Sql表:create,drop,alter 数据:insert,delete,update

数据模块在uses里时用文件名,调用时用系统名

全局变量:用于不同表单间的传值。如在public中定义变量a,使用时把值赋给form.a,具体可参考设置第一列为下拉式菜单

Delphi设置 切换窗体project-options-forms 字体tools-options-display

问题处理

属性栏消失按F11

Image提示“unknown picture file extension(.jpg) ” 在 uses中加 Jpeg

重建某个窗体(如unit2):新建unit1unit2,退出再重建,使之产生dcu文件,再将这三个文件复制到所需目录下,同时删除history文件夹

DBGrid某列的小数位数(at默认会去掉末尾的0,如1.00->1) TFloatField(dbGrid1.Columns[2].Field).DisplayFormat := '0.00'; 函数

定位posex(str1, str2,[n]) 在str1在str2从n的位置开始的位置,默认从1开始,输出int类型,必须在uses中加入StrUtils posex('b','abcabcabc',3)=5

复制copy(str,2,3),输入输出都是str,如copy(inttostr(1234),2,2)=23

长度length(str) 输出int

重复dupestring(chr(9),10) 将Tab重复10次,必须在uses中加入StrUtils

左取leftstr(str,2),rightstr(str,2) ,必须在uses中加入StrUtils

保留小数位数(2位),会四舍五入 FormatFloat('0.00',1.111),str类型

格式

小数

小数定义成real,转换floattoint,inttofloat; floattostr ,strtofloat Asfloat 验证trystrtofloat(同理trystrtoint)

Var

s: string;

x:double;

begin

s:='123.45x';

if not trystrtofloat(s,x)

then showmessage('数据类型转换出错');

end

保留小数位数(2位),会四舍五入 FormatFloat('0.00',1.111),str类型

DBGrid某列的小数位数(默认会去掉末尾的0,如1.00->1,下面语句只改变DBGrid显示格式,若从at取出数据给edit,显示的还是去0,但是sql表中定义成money类型而delphi中提交如1,则sql表中自动转换为1.00) TFloatField(dbGrid1.Columns[2].Field).DisplayFormat := '0.00';

日期

定义成date1:TDateTime,转换用datetostr, strtodate [ if not TryStrToDate(str,date1) then...] AsDateTime

常见键值

vbKeyBack 8 BACKSPACE 键

vbKeyTab 9 TAB 键

vbKeyReturn 13 ENTER 键

警告窗口

application.MessageBox('输入内容','标题 ', MB_ICONEXCLAMATION);

1. 指定讯息视窗上的图示

1.1 MB_ICONEXCLAMATION 或 MB_ICONWARNING

出现「黄三角形内有一个惊叹号」图示

1.2 MB_ICONINFORMATION 或 MB_ICONASTERISK

出现「白色椭圆内有一个蓝色小写 i」图示

1.3 MB_ICONQUESTION

出现「问号」图示

1.4 MB_ICONSTOP 或 MB_ICONERROR 或 MB_ICONHAND

出现「红色X」图示

2. 指定讯息视窗出现的按钮

2.1 MB_ABORTRETRYIGNORE

出现「Abort」「Retry」「Ignore」三个按钮

2.2 MB_OK

出现「Ok」按钮,为预设值。

2.3 MB_OKCANCEL

出现「Ok」「Cancel」两个按钮

2.4 MB_RETRYCANCEL

出现「Retry」「Cancel」两个按钮

2.5 MB_YESNO

出现「Yes」「No」两个按钮

2.6 MB_YESNOCANCEL

出现「Yes」「No」「Cancel」三个按钮

3. 可指定预设Focus在哪一个按钮

3.1 MB_DEFBUTTON1

指定focus在左边第一个按钮,这是预设值。

3.2 MB_DEFBUTTON2、MB_DEFBUTTON3、MB_DEFBUTTON4

以此类推,指定focus在左边第二、三、四个按钮

4. 可指定是否 Modal

4.1 MB_APPLMODAL

对于应用程式而言,是 modal form

4.2 MB_SYSTEMMODAL

对于作业系统而言,是 modal form

4.3 MB_TASKMODAL

5. 其他

5.1 MB_TOPMOST

将讯息视窗提至最前面

5.2 MB_RIGHT

将讯息文字向右对齐

IF语句

IF e1 THEN

<语句1> (没分号)

ELSE IF e2 THEN

<语句2> (没分号)

ELSE

<语句0>;

表达式用“=”或布尔类型,如not ADOQuery1.EOF

存在问题 aq,recordcount

清空文本框

edit1.clear;

edit1.Text:='';

控件介绍

DBGrid(可直接修改表,默认会去掉列数据末尾的0)

事件:keydown,keypress,与aq,at联动的afterscroll

列名Columns[0].Title.Caption

列数columns.count //recordcount(aq,at)

列数据源Columns[0].Fieldname (aq,at) //fieldbyname('列名').AsString (aq,at)

当前列号,从零开始DBGrid1. SelectedIndex

(当前列号,从1开始) ADOTable1.recno

表对齐align

列数据对齐columns[0].Alignment

列标题对齐Columns[0].Title.Alignment :=taCenter

表只读DBGrid1.ReadOnly:=true; 或可视化里options双击,将DBEditing设为false

列只读columns[0].ReadOnly

篇二:Delphi经验技巧集锦

Delphi经验技巧集锦

一.为列表框添光彩

为了改变Listbox和Combobox两个控件的单调风格, 我想在它们的每一项前面加上个图标。从表面上看好像不大可能啦。就在走投无路的时候,我忽然发现这两个构件都有一个style属性, 它可以设为lbOwnerDrawFixed,Draw这个单词吸引了我,然后我又从Delphi的在线帮助中找到了一个相关的事件

OnDrawItem,在这个事件中写一段代码,就可以在列表框中的每一项前面添加一个小图标啦。

下面是在Listbox 的OnDrawItem事件中添加的代码:

procedure TForm1.ListBox1DrawItem(Control:

TWinControl; Index: Integer;

Rect: TRect; State: TOwnerDrawState);

var

Bitmap: TBitmap;

Offset: Integer;

begin

with (Control as TListBox).Canvas do

begin

FillRect(Rect);

Offset := 2;

Bitmap := TBitmap.create;

Bitmap.LoadFromFile(′d:\temp1\1.bmp′);

//指定图文件是d:\temp1\1.bmp

BrushCopy(Bounds(Rect.Left + 2, Rect.Top,

Bitmap.Width, Bitmap.Height),

Bitmap, Bounds(0, 0, Bitmap.Width,

Bitmap.Height), clRed);

Offset := Bitmap.width + 6;

TextOut(Rect.Left + Offset, Rect.Top,

(Control as TListBox).Items[Index])

end;

end;

进一步,利用OnDrawItem事件的参数Index还可以在不同项前面添加不同的图标。还要告诉你的是,当用add方法为列表框或下拉框添加项目时,会自动执行 OnDrawItem事件,这样新添加的项目前面也就有了一个图标。

二.获取count值

Delphi与Power Builder一样,都提供了SQL语言,来实现对数据库的访问,仅仅是实现语句的长短不同。Delphi是在Pascal语言基础之上发展起来的,它

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • Delphi笔记

    Delphi笔记

    2016-12-23 14:01

  • DELPHI技巧:用Delphi编写圆周率模拟器

    DELPHI技巧:用Delphi编写圆周率模拟器

    2016-08-29 13:00

  • delphi 用image 画图

    delphi 用image 画图

    2016-08-01 12:01

  • Delphi 的绘图功能[10]

    Delphi 的绘图功能[10]

    2016-06-05 16:00

网友点评