易截截图软件、单文件、免安装、纯绿色、仅160KB

Delphi中绘制圆角矩形的窗体

制作圆角矩形的窗体:
01.procedure TPortForm.FormCreate(Sender: Tobject);
02.var hr :thandle;
03.begin
04.hr:=createroundrectrgn(0,0,width,height,20,20);
05.setwindowrgn(handle,hr,true);
06.end;
如果不要窗体外框,则使用:
01.procedure TPortForm.FormCreate(Sender: Tobject);
02.var hr :thandle;
03.begin
04.hr:=createroundrectrgn(1,1,width-2,height-2,20,20);
05.setwindowrgn(handle,hr,true);
06.end;
由于第一段代码做出来的窗口,圆角部份会没有边框,使用下面的代码做出边框:
01.procedure TForm1.FormPaint(Sender: TObject);
02.var
03.DC: HDC;
04.Pen: HPen;
05.OldPen: HPen;
06.OldBrush: HBrush;
07.begin
08.DC := GetWindowDC(Handle);
09.Pen := CreatePen(PS_SOLID, 1, clGray);
10.OldPen := SelectObject(DC, Pen); //载入自定义的画笔,保存原画笔
11.OldBrush := SelectObject(DC, GetStockObject(NULL_BRUSH));//载入空画刷,保存原画刷
12.RoundRect(DC, 0, 0, Width-1, Height-1,21,21); //画边框
13.SelectObject(DC,OldBrush);//载入原画刷
14.SelectObject(DC,OldPen); // 载入原画笔
15.DeleteObject(Pen);
16.ReleaseDC(Handle, DC);
17.end;


相关文档:

Delphi写的验证身份证号有效性函数


function ValidatePID(const APID: string): string;
{内部函数,取身份证号校验位,最后一位,对18位有效}
function GetVerifyBit(sIdentityNum: string): Char;
var
    nNum: Integer;
begin
    Result := #0;
    nNum := StrToInt(sIdentityNum[1]) * 7 +
  ......

Delphi 7高效数据库程序设计

内容简介
    dbExpress是Borland公司下一代数据访问技术。本书不仅详细介绍了dbExpress的基本功能、使用技巧以及Delphi/Kylix的DataSnap技术,还详细讨论了dbExpress的实现原理以及dbExpress的未来发展趋势。本书结构清晰,讲解透彻,实例丰富。作者李维是Borland公司著名技术专家,曾著有多部Delphi名 ......

delphi DataSnap巢状主从表实现

服务端:添加ADOConnection,ADOQuery1,ADOQuery2。设置ADOQuery1为主表,ADOQuery2为从表。(通过  ADOQuery2.SQL.Text:= 'select * from 从表 where FKID=:主表PKID'设置)。添加DataSetProvider1和DataSetProvider2分别连接到ADOQuery1和ADOQuery2。
客户端:添加ClientDataSet1,ClientDataSet2。ClientDataS ......

Delphi Open Tools API 浅探

savetime2k@yahoo.com  2004.1.28
http://savetime.delphibbs.com
今天开始学习元件编辑器,感觉比属性编辑器简单许多,但还是遇到了一些疑问。如果你能解答文中记录的问题,请告诉我答案,谢谢!
目 录
===============================================================================
⊙ TBaseComponentEdit ......

delphi string类型转integer时出错的检测

procedure TForm1.Button1Click(Sender: TObject);
Var
  Num: Integer;
Begin
  Try
    Num:=StrToInt(Edit1.Text);
    Edit2.Text:=IntToStr(Num*Num);
  Except
    On EConvertError Do   ShowMessage(Edit1.Text+'无法转成整数!'); ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号