• 2024-12-17Delphi 在窗体界面显示之后执行事件 AfterShow
    正常情况下,需要在启动之后直接执行某事件,一般会将函数放在Create或者OnShow里面。但是,这种情况下,当事件耗时较久是,界面会迟迟不肯出现,只能等待Create喝OnShow执行完毕之后才会显示。为了能够在界面能够先出现,然后运行需要的事件,可以使用消息的机制自定义添加一个AfterShow的函数
  • 2024-09-03lazarus DBGridEh标题栏排序
    lazarusDBGridEh标题栏排序按网上(delphi)的方法发现无效,经测试,以下代码可以正常排序:unitUnit1;{$modeObjFPC}{$H+}interfaceusesClasses,SysUtils,DB,Forms,Controls,Graphics,Dialogs,StdCtrls,Uni,DBGridsEh,DBCtrlsEh,LConvEncoding,DBGridEhImpE
  • 2024-08-07Delphi打开软键盘osk.exe
    开发环境DelphiXE11.3UnitunitUnit1;interfaceusesWinapi.Windows,Winapi.Messages,System.SysUtils,System.Variants,System.Classes,Vcl.Graphics,Vcl.Controls,Vcl.Forms,Vcl.Dialogs,Vcl.StdCtrls,winapi.ShellAPI,ShlObj,TLHelp32;typeTForm1
  • 2024-07-12lazreport调用fr3格式的方法
    近日使用时发现lazreport自带调用fr3的功能,按下面的方法调用就可以:1、uses添加fr3tolrf2、form添加frreport3、使用LoadFastReport3调用fr3文件LoadFastReport3(frReport控件名称,fr3格式的文件,返回相应信息); unitUnit1;{$modeobjfpc}{$H+}interfaceusesClas
  • 2024-04-24最精简使用mORMot (一)
    最精简使用mORMot(一)本文非原创,本文来自博客园,作者:{咏南中间件}mORMot是免费开源的SDK,它封装了HTTP.SYS,这是许多人使用它的原因,但mORMot本身已经被封装的很庞大,它提供许多的单元,这让人不免眼花缭乱,惊恐而不敢下手试用。其实,我们完全可以最精简使用mORMot,比如笔者就只使用它
  • 2024-03-05(23)lazarus memdataset的filter问题
    参考https://www.cnblogs.com/qiufeng2014/p/17388138.html链接:https://pan.baidu.com/s/1ayzgDbXjgXBnw-jM1FR4gA提取码:ogqzunitUnit1;{$modeobjfpc}{$H+}interfaceusesClasses,SysUtils,memds,db,Forms,Controls,Graphics,Dialogs,DBGrids;type{TForm1
  • 2024-01-02(05)系统托盘TrayIcon1使用方法
    TrayIcon1.Visible一定要设为True01]绑定右键菜单02]汽泡显示信息03]托盘闪烁04]更改ico图标01]绑定右键菜单拖一个PopupMenu1,设置好菜单,绑定即可显示02]汽泡显示信息procedureTForm1.Button1Click(Sender:TObject);beginTrayIcon1.BalloonFlags:=bfWarning;//bfNone,bfI
  • 2023-08-25CEF4Delphi(DELPHI Google Chrome 浏览器封装) 折腾 (2)--打开一个网页
      打开网页的,折腾了好久,试运行DEMO,就行,把DELPHI的代码抄过来,就是不行,然后把自己弄的控件名称搞的与DEMO一样,属性全对一样了,还是不行,郁闷很久后,才发现工程文件里面还要加代码。 我的工程名为:OpenChrome 选中工程文件后按CTRL+V,然后做以下修改:下面红色的代码是CEF4中需要
  • 2023-08-16将memo转化为JPG输出
    units1;interfaceuses Windows,Messages,SysUtils,Graphics,Controls,Forms,StdCtrls, Classes;type TForm1=class(TForm) Button1:TButton; Memo1:TMemo; procedureButton1Click(Sender:TObject); private {Privatedeclarations} public {Publicdecla
  • 2023-07-03Delphi 通过WebBrowser调用JS方法
    Delphi通过WebBrowser调用JS时,为防止版本问题导致调用失败,需要在html中增加 <metahttp-equiv="X-UA-Compatible"content="IE=edge"/>示例html代码<!DOCTYPEhtml><html> <head> <metacharset="utf-8"> <metahttp-eq
  • 2023-06-07delphi 回调函数例子 用函数过程作为参数
    转:今天有个朋友问我怎么用函数或者过程作为函数的参数呢,我说网上有挺多的,然而他告诉我很多例子运行不起来,我搜了几个测试了下,不知道是不是我自己的软件版本的问题,运行不了,所以自己研究了下,把自己能运行的贴出来,和大家分享分享。先说说回调函数需要注意的几个步骤吧,首先要声明一
  • 2023-05-13创建异形窗口1
    unitUnit1;interfaceuses Windows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms, Dialogs,StdCtrls;type TForm1=class(TForm)  Button1:TButton;  procedureButton1Click(Sender:TObject);  procedureFormDblClick
  • 2023-05-13VCL 中的 Windows API 函数: AlphaBlend
    AlphaBlend是指定图像混合透明的函数,在Graphics、GraphUtil、RibbonStyleActnCtrls单元用到.下面的测试是把一张图片显示在窗体,并可以调整透明度.、 unitUnit1;interfaceuses Windows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms, 
  • 2023-05-13关于 Delphi 中流的使用 用流读写结构化文件
    unitUnit1;interfaceuses Windows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms, Dialogs,StdCtrls;type TForm1=class(TForm)  Memo1:TMemo;  {添加Memo显示内容}  Button1:TButton;  Button2:TButton; 
  • 2023-05-13关于 Delphi 中流的使用 用 TMemoryStream(内存流) 入门
    所谓"流",就是一段数据或是一块内存;在进行流操作时,我们不必关心流中的数据到底是什么;只需要知道流的大小和当前的指针位置.所以流只有两个属性:Size、Position.对流的操作,不过就是读取和写入.所以流最主要的方法就是Read和Write.在很多控件的使用中,读取主要用Load
  • 2023-05-11判断软件的闲置时间GetLastInputInfo
    //GetLastInputInfo是检测系统输入的,应用到某个程序中不合适!此问题有二种解法来监控输入消息:1.用线程级HOOK,钩上MOUSEHOOK与KEYBOARDHOOK2.在Application.OnMessage中做处理显然,用第2种方法比较方便!众所周知,键盘与鼠标消息都是队列消息,需要经过消息队列后经过一些处理,再发往
  • 2023-05-10[记录一下]lazarus memdataset的filter问题
    在lazarus使用memdataset时,如果filter按下面的方法是得不到想要结果:MEMDataSet1.Filtered:=false;MEMDataSet1.Filter:='tasknameLike'+quotedstr('%'+Edit4.Text+'%');MEMDataSet1.Filtered:=true;最后在官网找到解决办法:unitUnit1;{$modeobjfpc}{$
  • 2023-04-07Delphi WebBrowser调用WebSocket 服务
    webSocketDemo使用工具:WebBrowser传输参数:delphi给js赋值JSON字符串,js接收到后通过JSON.parse()方法转换成JSON对象,然后根据需要参数进行读取,Delphi通过SuperObject处理JSON数据调用JSON方法:WebBrowser1.oleObject.document.parentWindow.execScript('js方法名'
  • 2023-03-25N长时间没有操作鼠标键盘,自动关闭显示器、锁屏
    unitUnit1;interfaceusesWinapi.Windows,Winapi.Messages,System.SysUtils,System.Variants,System.Classes,Vcl.Graphics,Vcl.Controls,Vcl.Forms,Vcl
  • 2023-02-02通过HH8WilEdit学习WIL 文件编码 3 资源文件实例,导出WIL.RES中的WIL,WIX文件
     unitUnit1;interfaceusesWindows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,Dialogs,StdCtrls;typeTForm1=class(TFor
  • 2023-01-29用lazarus的InputQuery替代密码修改窗口
    lazarus的InputQuery按以下方法就可以替代密码修改窗口,InputQuery跨平台的,简单方便。unitunit13;{$modeobjfpc}{$H+}interfaceusesClasses,SysUtils,Forms,