-
Delphi 监控剪贴板的文字内容
Delphi 监控剪贴板的文字内容,这个监控程序可以监控复制到剪切板的文字信息,图片暂时不能监控到,具体的监控实现如下:
NextformHwnd:HWND;//观察链中下一个窗口句柄
procedure WMDrawClipBoard(var AMessage:TMessage);message WM_DRAWCLIPBOARD;
//处理WM_DRAWCLIPBOARD消息过程
{ Public declarations }
//将WM_DRAWCLIPBOARD消息传递到下一个观察链中的窗口
SendMessage(NextformHwnd,AMessage.Msg,AMessage.WParam,AMessage.LParam);
//查询剪贴板中特定格式的数据内容
if (Clipboard.HasFormat(CF_TEXT) or Clipboard.HasFormat(CF_OEMTEXT)) then
begin
//处理剪贴板中内容
memo1.Lines.Clear;
memo1.Lines.Add(Clipboard.asText);
end;
- 2022-01-22 10:48:45下载
- 积分:1
-
Delphi 渐变的RGB空心色环绘制源码演示
Delphi渐变圆形的实现方法,RGB色环空心绘制演示源码:
oBmp := TBitmap.Create; //为了代码整齐就不写try了
oBmp.PixelFormat := ABitmap.PixelFormat;
oBmp.Width := ABitmap.Width;
oBmp.Height := ABitmap.Height;
BitBlt(oBmp.Canvas.Handle, 0, 0, oBmp.Width, oBmp.Height, ABitmap.Canvas.Handle, 80, 80, SRCCOPY); //要拷贝的位图
oRgn := CreateEllipticRgn(0, 0, 100, 100); //创建圆形区域
SelectClipRgn(ABitmap.Canvas.Handle, oRgn); //选择剪切区域
ABitmap.Canvas.Draw(0, 0, oBmp); //位图位于区域内的部分加载
- 2022-03-21 13:09:53下载
- 积分:1
-
Delphi Tinifile创建INI文件的范例
Delphi 创建INI文件,使用了Tinifile.Create来创建一个指定格式的INI文件,作为程序的配置文件,运行程序时读入文件中的内容。ini文件作为配置文件,相信大家已经不陌生了,对于Delphi操作新手来说,源代码有很好的学习参考作用。通过本源码你可以了解到写文件对象中WriteBool、WriteFloat、WriteDate、WriteTime、WriteInteger、WriteString等众多字段类型写入的用法。
- 2022-03-22 10:38:54下载
- 积分:1
-
Delphi设计制作BMP图像的推拉动画效果
Delphi设计制作BMP图像的推拉动画效果,类似PPT幻灯片中的图像飞入效果,图片本应该在窗口上显示,但经过本代码的控制后,图像由底部向上部被推出来,其实就是由下到上的图片滑动效果,有兴趣的可下载源码参考主文件代码。
注:本程序好像只对BMP图像有效,其它格式如JPG/gif等图像暂且不支持该动画效果。
- 2022-02-03 23:17:10下载
- 积分:1
-
Delphi 判断文件是否被占用
Delphi 判断文件是否被占用,这个在删除的时候,可以添加上此功能,因为文件占用的话,用户删除时会出错,用本代码可以先判断一下文件是否被占用,用弹窗方式告诉用户是否可以删除,如果没有被占用,则程序进行下一步处理。下面简要了解一下判断的具体代码(局部):
on E:EInOutError do
begin
if e.ErrorCode=32 then//文件正在被使用
begin
result:=true;
exit;
end;
end;
更完整的可编译源码,请下载。
- 2023-09-02 10:00:03下载
- 积分:1
-
Delphi 获得汉字区位码的源码
Delphi 获得汉字区位码的源码,输入指定汉字,将得到这些汉字的区位码,关键代码请参考以下的源码:
procedure TForm1.Button1Click(Sender: TObject);
var
str:string;
hi,lo:integer;
begin
str:=trim(edit2.Text);
hi:=byte(str[1])-$a0;
lo:=byte(str[2])-$a0;
edit1.Text:=inttostr(hi)+inttostr(lo);
end;
- 2022-02-21 00:07:08下载
- 积分:1
-
Delphi 垂直交错显示效果
图片的垂直交错效果,Delphi 编写的图片垂直交错显示效果,之前就分享过这种效果,类似百叶窗的交替显示效果,可用于图片转场,不过本效果还有很多地方需要优化,当时是写给一本书,作为随书实例的,有兴趣的可参考,关于本功能的关键代码部分,请看以下代码:
newbmp:= TBitmap.Create;
newbmp.Width:=image1.Width;
newbmp.Height:=image1.Height;
bmpheight:=image1.Height;
bmpwidth:=image1.Width;
i:=0;
while i0 do
begin
newbmp.Canvas.CopyRect(Rect(0,j-1,bmpwidth,j),image1.Canvas,Rect(0,bmpheight-i+j-1,bmpwidth,bmpheight-i+j));
newbmp.Canvas.CopyRect(Rect(0,bmpheight-j-1,bmpwidth,bmpheight-j),image1.Canvas,Rect(0,i-j,bmpwidth,i-j+1));
j:=j-2;
Application.ProcessMessages;
end;
form1.Canvas.Draw(0,0,newbmp);
i:=i+2;
end;
newbmp.free;
- 2023-04-12 21:35:03下载
- 积分:1
-
Delphi 格式化DataGrid表格中的数据
Delphi 格式化DataGrid表格中的数据,DataGrid网格列表在各种编程的数据库显示方面都使用广泛,因此对于Delphi的数据库编程,DataGrid的使用技巧是一定要撑握的,本源码所要演示的就是一个使用DataGrid的简单例子,将DataGrid表格中的数据格式式成你想要的格式,测试前请确保Delphi与数据库正常连接且有数据。
- 2022-01-25 15:23:01下载
- 积分:1
-
Delphi版智能图片放大器
Delphi版智能图片放大器,用滑块改变放大倍率,向左滑,则放大位数变大,反之则变校打开程序后,鼠标在图片区域移动,即可把鼠标悬停区域的图像放大显示N倍,放大位数就是刚才提到的,滑块来调整的放大位数,部分代码可参考如下:
Const //定义放大的区域
dSide=50;//区域大小
var
sSide: Integer;//放大比例[1至100],1为最大100为缩小
msHide: Boolean;
OldX,OldY,NewX,NewY: integer;
Dest,Source: TRect;
{$R *.DFM}
Procedure TForm1.ImageFD(x,y,Side: Integer);//定义放大区域及放大过程
begin
sSide:=30; //初始化放大比例
msHide:=True;
//Canvas.CopyMode:=cmSrcCopy;
image1.Picture.Assign(image2.Picture);
end;
详细情况请下载源码后查看Unit1.pas文件。
- 2023-04-17 17:00:04下载
- 积分:1
-
Delphi 单击StringGrid列进行排序
Delphi 单击StringGrid列进行排序,StringGrid行的任意列单击,就会重新排序一次,排序规则可以自己定义,这种排序功能可有效提升StringGrid显示数据的易用性,增强其功能,提升用户体验,本例子源代码相当简单,对学习者也有很好的帮助作用。参见以下代码:
begin
if Button = mbRight then Exit;
TStringGrid(Sender).MouseToCell(X, Y, vCol, vRow);
if (vRow < 0) or (vRow >= TStringGrid(Sender).FixedRows) then Exit;
StringGridRowSort(TStringGrid(Sender), vCol, vOldCol = vCol);
if vOldCol = vCol then
vOldCol := - vOldCol
else
vOldCol := vCol;
end;
- 2022-05-29 23:30:47下载
- 积分:1