转载自:https://blog.csdn.net/listest/article/details/121272294 procedure SetAutoRun(isRun: Boolean); var oAutoRunRegister: TRegistry; begin oAutoRunRegister := TRegistry.Create; try oAutoRunRegister.RootKey := HKEY_CURRENT_USER; oAutoRunRegiste
目录1.利用rasphone.exe2.利用系统api函数 1.利用rasphone.exe 这里直接贴一个断网、联网更换ip的函数,虽然简陋但是还算稳定。 procedure ChangeIp(ConnName: string; Delay1, Delay2: Integer); begin winexec(PChar('rasphone -h "' + ConnName + '"'), sw_hide); Sleep(Del
unit R18; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls; type TpatDt = record //角色,记录类型 Used : Byte; Sban : Byte; Xpos : Integer; Ypos : Integer;
go和delphi基于proto数据标准 用代码工厂生成units.proto 用代码工厂生成DELPHI rest CRUD 用protoc将units.proto生成GO代码units.pb.go protoc --gofast_out=. units.proto // Code generated by protoc-gen-gogo. DO NOT EDIT. // source: units.proto package units impo
1.抽象 (相当于制造前 画图纸/捏造/想象对象的阶段,还没开始造) 1.1.类在 type 之下定义. 1.2.类的结构: type TPerson = class end; 类名为TPerson,你可以随便取,但应该符合命名规范.前面的T 为类名约定前缀,你可以不要. 2.实例化.(把抽象好的对象制造出来)所
delphi rest代码工厂使用 代码工厂所生成的代码,以轻量化、跨平台、跨语言为目的。 支持基础资料(单表)、单据主从表(多表)、一对多的代码生成。 支持JSON和GOOGLE PROTOBUF二种数据序列格式。 配置数据库连接 1)商品资料(基础资料)代码生成 unit rest.tgoods; //代码由代码工厂自动生
Delphi 11.2已经在路上,其最大的变化,也是我最喜欢与期待的,那就是在android平台运行效率的提升(ios我没试,不知具体情况)。 我原来是不敢用ListBox来做复杂界面的,为什么呢?那就是当放置多了ListBoxItem时,上下滑动,卡顿的明显,不用你的用户说,自己用着都难过,不得矣,只能用ListView来处理,那存
unit R13; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls; type TRei13 = class(TForm) Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton;
unit rei11; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls; type //定义记录 类型,角色管理用 TPatDt = record Used:Byte; //角色所使用的标记 Sban:Byte;
Delphi中对JSON的解析处理可以使用 ISuperObject。 function SO(const s: SOString = '{}'): ISuperObject; overload; property O[const path: SOString]: ISuperObject read GetO write PutO; default; property S[const path: SOString]: SOString read GetS write PutS; //
delphi将*.proto转换为pascal工具 *.proto是google protobuf的结构描述语言。 //protobuf模板文件 syntax="proto3"; package tables; //返回结果 message Res { int32 status = 1; string exception = 2; string message = 3; } //商品资料 message Goods { string goodsi
delphi自动生成资源的REST CRUD工具 该工具同样,还可以将资源生成GOOGLE PROTOBUF CRUD。 运行tableTool.exe工具,设置参数,连接数据库。 以“计量单位”资源为例,选择“tunit”数据表,点击“查询”按钮,点击“生成REST CRUD”按钮,点击“保存成文件”按钮,选择中间件源码所在目录,文件名
uses Clipbrd, ShellAPI;var FFileName: array[0..MAX_PATH] of Char; FileNumber,i:Integer; Drop:Cardinal; begin if Clipboard.HasFormat(CF_HDROP ) then begin Drop := Clipboard.GetAsHandle(CF_HDROP); // file://首先查询用户选中的文件的个数 FileNu
內容來源https://www.cnblogs.com/brightsea/p/2085673.html,感謝原作者DELPHI中EXCEL组件的使用方法: 一) 使用动态创建的方法 首先创建 Excel 对象,使用ComObj: var ExcelApp: Variant; ExcelApp := CreateOleObject( 'Excel.Application' ); 1) 显示当前窗口: ExcelApp.Visible
一.TscGPButton按钮 1.按钮外观基本上都在options里设置. Normal开头的属性: 按钮常态下的效果设置; HOT开头(或包含)的属性: 鼠标停在按钮上时的效果设置; Frame开头的属性: 边框设置; pressed开头(或包含)的属性: 与点击有关的效果设置; Font开头的属性: 字
delphi数据表自动生成rest CRUD和rest api在线文档 1)设置数据库连接参数 2)代码工厂自动生成REST CRUD方法代码 unit rest.tgoods; //代码由代码工厂自动生成 //2022-07-07 {$I def.inc} interface uses {$IFDEF firedac} db.firedac, db.firedacPool, {$ENDIF} {$IFDEF u
前言:所谓"流", 就是一段数据或是一块内存;在进行流操作时, 我们不必关心流中的数据到底是什么; 只需要知道流的大小和当前的指针位置. 所以流只有两个属性:Size、Position.对流的操作, 不过就是读取和写入. 所以流最主要的方法就是 Read 和 Write.在很多控件的使用中, 读取主要用
procedure GetDemo;var IdHttp : TIdHTTP; Url : string;//请求地址 ResponseStream : TStringStream; //返回信息 ResponseStr : string;begin //创建IDHTTP控件 IdHttp := TIdHTTP.Create(nil); //TStringStream对象用于保存响应信息 ResponseStream := TStringStream.C
delphi Jpg和Bitmap互转转换的方法: uses Jpeg; procedure Bmp2Jpeg(const BmpFileName, JpgFileName: string); var Bmp: TBitmap; Jpg: TJPEGImage; begin Bmp := TBitmap.Create; Jpg := TJPEGImage.Create; try Bmp.LoadFromFile(BmpFileName); Jpg.Assign
Delphi 11.1默认情况下,编译选择项Range checking是勾选的,也就是打开的。当我们建立一个项目,查看这个选择项,注意这时候是debug状态: 切换到Release状态,这个选择项是关闭的: 这与以前的版本不同! 如果你想修改这个选择项并重新发布程序,一定要注意:删除原来的输出目录!用project c
Delphi TField.ProviderFlags 属性 单元:DB 说明:指定应用更新时提供程序如何使用字段值。 语法: 1 property ProviderFlags: TProviderFlags; 描述:ProviderFlags仅与提供给提供程序组件抯事件处理程序的数据包中出现的字段相关。此属性是一组标志,用于确定在应用更新或解决更新错误
use Vcl.Printers, Winapi.ShellAPI;procedure TForm1.PrintDocument(const documentToPrint: string); var printCommand: string; printerInfo: string; Device, Driver, Port: array[0..255] of Char; hDeviceMode: THandle; begin if Printer.PrinterIndex =
{ "班级1": { "classid": "101", "teacher": "Lee", "age": 25, "books": [ "book1", "book2", "
我写了一个无边框的窗体.想通过pnlTop实现拖动窗体,与双击时最大化的功能. 最佳的解决方案如下: procedure TFMain.pnlTopMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);begin ReleaseCapture; SendMessage(FMain.Handle, WM_SYSCOMM
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type tmythreadclass = class of tmybasethread; //基类 tmybasethread= class(TThread) private procedure test; protect