-
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 实现组件立体阴影、投影效果
Delphi 为组件制作立体效果,实现组件的阴影、投影效果,这种阴影效果不是很细腻,不过大致也说得过去,必竟实现方法简单,原生Delphi方法实现,不依靠三方控件,最终效果请参见测试截图所示。
- 2022-07-03 03:09:14下载
- 积分:1
-
形象的电子表-Delphi程序
Delphi编写制作一款形象的电子表(钟表)效果,模拟时钟,界面方面做成了圆形,看不见窗口的边框,像是透明的窗口,各个指针会走动,关于各个指针的移动及计算方法,有兴趣可参考:
vh := Hour/12.0*2*Pi;
vm := Min/60.0*2*Pi;
vs := Sec/60.0*2*Pi;
with Canvas do
begin
Pen.Width:=4;
Pen.Color := clBlack;
MoveTo(60,60);
LineTo(60+Round(25*Sin(vh)),60-Round(25*Cos(vh)));
Pen.Width:=2;
Pen.Color := clBlack;
MoveTo(60,60);
LineTo(60+Round(45*Sin(vm)),60-Round(45*Cos(vm)));
Pen.Width:=1;
Pen.Color := clRed;
MoveTo(60,60);
LineTo(60+Round(55*Sin(vs)),60-Round(55*Cos(vs)));
end;
窗体方面:这个圆盘窗口要是能移动就好了,不支持右键菜单,也不能关闭,关闭窗口需要按键盘上的ALT+F4。
- 2022-01-27 12:29:32下载
- 积分:1
-
使用Delphi 制作无闪烁的动画效果
使用Delphi 制作无闪烁的动画效果,如何实现不闪烁的动画呢?这个例子或许能找到一些答案:部分代码如下:
var
x,i: Integer;
dir,run: Boolean;
begin
b := TBitMap.Create;
b.Width := AnimWindow.Width;
b.Height := 32;
b.Canvas.Pen.Color := clBtnFace;
b.Canvas.Brush.Color := clBtnFace;
b.Canvas.Rectangle(0,0,AnimWindow.Width,32);
run := True;
dir := False;
x := 0;
while run do
for i := 0 to AnimWindow.ImageList1.Count-1 do
begin
b.Canvas.Rectangle(0,0,AnimWindow.Width,32);
AnimWindow.ImageList1.Draw(b.Canvas,x,0,i);
Synchronize(DrawAnimPic);
Sleep(AnimWindow.SpinEdit1.Value);
if (x = 0) or (x = 300) then dir := not dir;
if dir then Inc(x) else Dec(x);
end;
b.Free;
end;
- 2023-03-22 21:40:04下载
- 积分:1
-
Delphi 获取MonthCalendar中选择的日期
Delphi 获取MonthCalendar中选择的日期,其实就是完成一个时间、日期的选择功能,年份、月份、日期、时间都可自定义调整并选择,这个简单的例子,可演示Delphi中MonthCalendar的用法,生成一个日期时间选择器功能。下面是相关代码:
procedure TForm1.Button1Click(Sender: TObject);
var
Year,Month,Days: Word;
begin
DecodeDate(MonthCalendar1.Date,Year,Month,Days);
Edit1.Text:=IntToStr(Year);
Edit2.Text:=IntToStr(Month);
Edit3.Text:=IntToStr(Days);
end;
全部源码请下载本实例包。
- 2022-02-02 06:32:18下载
- 积分:1
-
Delphi 当鼠标和键盘在一定时间没有动作时关闭程序
Delphi 当鼠标和键盘在一定时间没有动作时关闭程序,这是一个智能化程序,类似于屏保,当一定时间没有操作时,会关闭软件,运行的技术也不很高深,有兴趣的可下载源代码研究学习。
- 2022-10-11 13:05: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方法示例
本源码主要演示,Delphi如何拖动一个无标题栏的窗体,此前记得与大分享过不少VB类的相似源码,大部分情况下,我们习惯拖动窗口的标题栏来移动窗口,现在我们把窗口的标题栏去掉了,那么是如何实现窗口的拖动呢?其实我们可以拖动窗口的主窗口部位,同样可以拖动窗口,而且这样似乎更方便操作,关于代码的实现,请大家下载源码后,查看Unit1.pas文件。
- 2022-09-30 14:35:03下载
- 积分:1
-
Delphi户籍管理系统,Access数据库版
Delphi户籍管理系统,Access数据库版,界面方面使用了Xpmenu和SReport控件。测试时的登录初始密码为:222222 。
在数据库编程方面,本系统更注重录入及查询,采用多重SQL语句查询,并结合查询可生成报表。
- 2022-04-18 17:44:59下载
- 积分:1
-
Delphi生成立体字效果
Delphi生成立体字效果,在文字下面增加阴影效果,这个在PS软件中是一个常用的特效,用Delphi也可以实现这种原生效果,阴影大小和面积、角度在代码中可以设置,最终自定义的阴影效果如图所示,实现了一个不错的立体文字效果。
- 2023-07-03 14:00:03下载
- 积分:1