登录
首页 » Delphi源码 » Delphi 用获取路径的方法得到圆形窗体

Delphi 用获取路径的方法得到圆形窗体

于 2022-05-16 发布 文件大小:11.54 kB
0 43
下载积分: 2 下载次数: 1

代码说明:

Delphi 用获取路径的方法得到圆形窗体,制作实现一个非矩形窗口,可以说是一个不规则窗口了,圆形的窗口,标题栏、状态栏及窗口关闭等操作按钮均不邮了。圆形窗口的基本实现思路是根据路径创建不规则窗体,然后设置窗口为透明模式,部分代码如下:   dc:=self.Canvas.Handle;   BeginPath(dc);   //根据路径创建不规则窗体   SetBkMode(dc,TRANSPARENT);   //设置为透明模式    Ellipse(dc,20,20,220,220);   EndPath(dc);   region:=PathToRegion(dc);   SetWindowRgn(self.Handle,region,TRUE);   end;

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • Delphi 实现TDBGrid组件的斑马线显示
    Delphi 实现TDBGrid组件的斑马线显示,也就是TDBGrid的不同行显示不同的颜色,设置不同的背景色,让数据显示更清淅,看上去像斑马线,俗称隔行换色,本例子是结合数据库实现的,若要正常运行,请先附加Database数据库中的SQLSERVER文件,附加后在本示例中修改数据库连接字符串即可。
    2023-05-29 13:35:03下载
    积分:1
  • Delphi 使用Canvas美化ListBox列表项
    Delphi 使用Canvas美化列表项,当用户鼠标单击ListBox列表项时,该列表项高亮显示,改变背景色,文字居中对齐,如图所示。   主要是使用了Delphi中的Canvas.FrameRect对其进行美化,具体代码有兴趣可参考:   Canvas.FrameRect(Clientrect);   if odSelected in State then   begin    Canvas.Brush.Color:=clRed;    Canvas.RoundRect(Rect.Left,Rect.Top,Rect.Right,Rect.Bottom,8,15);    setBkMode(Canvas.Handle,TRANSPARENT );    Canvas.TextOut((Rect.right-Rect.Left) div 2,Rect.Top,Items.Strings[Index]);   end   else   begin    Canvas.Brush.Color:=clSkyBlue;    Canvas.RoundRect(Rect.Left,Rect.Top,Rect.Right,Rect.Bottom,15,15);    Canvas.TextRect(Rect,Rect.Left,Rect.Top,Items.Strings[Index]);   end;
    2022-06-01 23:33:23下载
    积分:1
  • Delphi 7.0 改变菜单中的字体样式
    Delphi 7.0 改变菜单中的字体样式,本程序其实实现了两种功能,1、枚举系统中所有已安装的字体,并加载到Listbox列表中供选择,2,改变字体样式,选中列表中的任意字体样式,单击即可改变菜单中的文字样式,为窗口中其它区域的文字设置字体样式的时候也可参考。   begin    ListBox1.Items:=Screen.Fonts;字体样式    self.MainMenu1.AutoHotkeys:=maManual;    self.MainMenu1.AutoLineReduction:=maManual;    Screen.MenuFont.Size:=12;字号   end;
    2022-07-27 08:35:14下载
    积分:1
  • Visual C# 调用声音控制对话框
    Visual C# 调用声音控制对话框,在windows Xp下表现挺好,在Windows7有些问题,调用的面板并不会显示出来,这是为何呢?windows调用 声音对话框的实例 ,基于Delphi7源码实现。
    2022-03-10 20:40:03下载
    积分:1
  • 窗口中的弹出式右键菜单-delphi
    窗口中的弹出式右键菜单-delphi PopupMenu源码,   procedure TForm1.Button1Click(Sender: TObject);   var    Poin:TPoint;   begin    Poin := Point(Button1.Left,Button1.Top+Button1.Height);    Poin := ClientToScreen(Poin);    PopupMenu1.Popup(Poin.X,Poin.Y);   end;
    2022-07-24 15:12:59下载
    积分:1
  • Delphi 把时间格式转换成字符串
    Delphi 把时间格式转换成字符串来显示,在运行的程序界面中,选择一个指定的日期后,可将此日期转换成字符串格式的,也就是不再具备时间的属性,但是自身已经变为字符串了。人可以识别,但机器不再识别为时间了。   procedure TForm1.FormShow(Sender: TObject);   begin    DateTimePicker1.Date:=now();   end;   procedure TForm1.Button1Click(Sender: TObject);   begin    edit1.Text:=datetostr(DateTimePicker1.Date);   end;
    2022-07-17 07:07:52下载
    积分:1
  • Delphi 使窗体始终在最前面
    Delphi 使窗体始终在最前面,不几行代码实现的置顶窗口,大家对这种窗口相信都不会太陌生,不被其它的窗口遮挡,显示在最前面,典型的应用像一些视频播放器的播放窗口,在播放视频时可设置显示在最顶端,你可以边工作边看电影啦!详细实现请参考源代码。
    2022-03-14 11:14:48下载
    积分:1
  • Delphi 变速齿轮# 让时间变快减慢
    Delphi 变速齿轮# 让时间变快减慢,其实这个似乎是做不到的,只是模拟一下,代码及描述如下:   procedure Speed(count:word); stdcall;   const ExceptionUsed = $03; { 中断号也可以用其它的中断号}   var    IDT : array [0..5] of byte; { 保存中断描述符表}    lpOldGate : dword; {存放旧向量}   begin    asm    push ebx    sidt IDT {读入中断描述符表}    mov ebx, dword ptr [IDT+2]{IDT表基地址}    add ebx, 8*ExceptionUsed {计算中断在中断描述符表中的位置}    cli {关中断}    mov dx, word ptr [ebx+6] {取6,7字节 另外4字节用于门属性和选择子 }    shl edx, 16d {左移16位}    mov dx, word ptr [ebx] {取1,2字节 }    mov [lpOldGate], edx {保存旧的中断门}    mov eax, offset @@Ring0Code {修改向量,指向Ring0级代码段}    mov word ptr [ebx], ax {低16位,保存到1,2字}    shr eax, 16d    mov word ptr [ebx+6], ax {高16位,保存到6,7位}    int ExceptionUsed {发生中断}    mov ebx, dword ptr [IDT+2] {重新定位到中断描述符表中}    add ebx, 8*ExceptionUsed    mov edx, [lpOldGate]    mov word ptr [ebx], dx   
    2023-02-13 04:55:03下载
    积分:1
  • Delphi 设定Windows屏幕分辨率的方法和示例代
    Delphi 设定Windows屏幕分辨率的方法和示例代码:   function TForm1.DynamicResolution(X, Y: word): BOOL;   var    lpDevMode: TDeviceMode;   begin    Result := EnumDisplaySettings(nil, 0, lpDevMode);    if Result then    begin    lpDevMode.dmFields := DM_PELSWIDTH Or DM_PELSHEIGHT;    lpDevMode.dmPelsWidth := X;    lpDevMode.dmPelsHeight := Y;    Result := ChangeDisplaySettings(lpDevMode, 0) = DISP_CHANGE_SUCCESSFUL;    end
    2023-04-22 01:05:03下载
    积分:1
  • Delphi 利用API绘制弧形
    Delphi 利用API绘制弧形,   begin    ArcRect := ClientRect;    Canvas.Pen.Width:=2;    for i:=1 to 10 do    begin    Arc(Canvas.Handle,ArcRect.Left,ArcRect.Top,ArcRect.Right,    ArcRect.Bottom,ArcRect.Right,(ArcRect.Bottom-ArcRect.Top) div 2,    ArcRect.Left,(ArcRect.Bottom-ArcRect.Top) div 2);    InflateRect(ArcRect,-2,-2);    Canvas.Pen.Color := PaletteIndex(i+10);    end;
    2022-03-21 03:44:09下载
    积分:1
  • 696518资源总数
  • 104292会员总数
  • 28今日下载