首页 > TAG信息列表 > TObject

Delphi 经典游戏程序设计40例 的学习 例30 残留的轨迹是圆形运动

unit R30; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls; type TRei30 = class(TForm) Panel1: TPanel; Button1: TButton; ScrollBar1: TScrollBar; ScrollBar2: TScr

Delphi 新语法:泛型

  这里的新语法一般指Delphi7不支持的语法,高版本中会经常遇到,所以花一点时间学会使用它。泛型是一种特殊的类型。你不用一开始就指明参数的具体类型,而是先定义一个类型变量,在使用的时候再确定参数的具体类型。准备从万一博客中学习,节约翻找资料的时间。 最简单的泛型 一开始我们

Delphi 经典游戏程序设计40例 的学习 例29 残留的轨迹是钟摆线

    unit R29; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls; type TRei29 = class(TForm) Panel1: TPanel; Button1: TButton; ScrollBar1: TScrollBar; ScrollBar2:

02-mORMot框架样例学习-02 - Embedded SQLite3 ORM(SQLite3 数据库)

  program Project01; uses {$I SynDprUses.inc} // use FastMM4 on older Delphi, or set FPC threads Forms, SysUtils, SynCommons, mORMot, Unit1 in 'Unit1.pas' {Form1} ,mORMotSQLite3, SynSQLite3Static ; {$R *.res} begin App

关于 Delphi 中流的使用(1) 用 TMemoryStream(内存流) 入门

前言:所谓"流", 就是一段数据或是一块内存;在进行流操作时, 我们不必关心流中的数据到底是什么; 只需要知道流的大小和当前的指针位置. 所以流只有两个属性:Size、Position.对流的操作, 不过就是读取和写入. 所以流最主要的方法就是 Read 和 Write.在很多控件的使用中, 读取主要用

DELPHI 拖动窗体

我写了一个无边框的窗体.想通过pnlTop实现拖动窗体,与双击时最大化的功能. 最佳的解决方案如下: procedure TFMain.pnlTopMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);begin  ReleaseCapture;  SendMessage(FMain.Handle, WM_SYSCOMM

使用TMonitor在线程中加解锁

今天学习Delphi System.Rtti的源代码,进一步学习到了如何在线程中使用锁。参考官方的代码整理出来分享: var  _GlobalContextTokenLock: TObject; 定义一个全局的实例,供TMonitor使用。 再写一个方法,返回_GlobalContextTokenLock: function GCTokenLock: TObject; inline; begin i

Lazarus+LAMW强制form的方向

在OnRotate按下面的添加就可以强制指定横屏或竖屏了。 procedure TAndroidModule1.AndroidModule1Rotate(Sender: TObject; rotate: TScreenStyle); begin if rotate = ssLandscape then // device is on horizontal... Self.SetScreenOrientationStyle(ssPortrai

Passcal运费计算

unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; Label3: TLabel; txtweight: TEdit; txtdistence:

Delphi XE5 for Android (二)

原始文章:Delphi XE5 for Android (二) 按照Embarcadero的说法:Windows平台只能使用VCL,Windows、iOS和Android都可以使用FMX,并且VCL和FMX不能同时在一个程序中。FMX的用法与VCL有一定的差异,先从最简单的说起: 应用程序的关闭退出   在FMX中,由Activity替代了Form的概念,虽然TForm类仍然

Delphi两个取字串长度的函数strlen,length

相关资料: http://www.delphitop.com/html/zifuchuan/1242.html   【strlen】PChar 串专用函数:串长度procedure TForm1.BitBtn1Click(Sender: TObject); var s: Widestring; begin s := '桂枝香在故国晚秋'; ShowMessage(IntToStr(Length(String(s))));//结果不是8而是16 end;━━

DELPHI动态创建窗体

//第一种方式 procedure TForm1.btn1Click(Sender: TObject); begin With TForm2.Create(Application) do Try ShowModal; finally free; end; end; //第二种方式 procedure TForm1.btn2Click(Sender: TObject); begin if not assigned(Form2) then begin Fo

Delphi中MediaPlayer简单使用--播放视频

------------------     仅做简单的测试,只想看看怎么播放视频,不想弄这个,有兴趣的可以深入了解,谢谢! 要想更深入了解请参考:Delphi多媒体设计之TMediaPlayer组件(一) - pchmonster - 博客园  https://www.cnblogs.com/pchmonster/archive/2012/07/12/2588846.html ----------------

图片的居中、拉伸与平铺 - 回复 "我是一只想飞的小小鸟" 的问题

图片的居中、拉伸与平铺 - 回复 "我是一只想飞的小小鸟" 的问题 问题来源: http://www.cnblogs.com/del/archive/2008/11/04/1326105.html#1533947 本例效果图: 代码文件:unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Control

打开"我的电脑"等特殊文件夹

打开"我的电脑"等特殊文件夹 uses ShellAPI; //打开 C 盘 procedure TForm1.Button1Click(Sender: TObject); begin ShellExecute(Handle, 'open', 'Explorer.exe', 'C:\', nil, SW_SHOWNORMAL); end; //打开 我的电脑 procedure TForm1.Button2

唤醒控件曾经拥有的能力

唤醒控件曾经拥有的能力 控件的祖先 TControl 有很多功能, 但它的有些子孙确丧失了很多(为了专用). 譬如 TBevel 就没有把一些常规的事件继承下来, 那些没有被继承的功能一般都隐藏在 protected 区, 如果重新继承是可以使用的. 这里尝试了另外一种方法: 自己没有继承时,

字符串转换到指定格式的宽字符 - 回复

本例效果图:代码文件:unit Unit1; interface uses   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,   Dialogs, StdCtrls; type   TForm1 = class(TForm)     Memo1: TMemo;     Button1: TButton;     Edit1:

mormot json序列(还原)

mormot json序列(还原) /// <author>cxg 2021-5-28</author> /// delphi7 + mormot1.18 /// json序列\还原 (* people.json [ {"RowID":3,"FirstName":"咏南","LastName":"Rachmaninoff","Data":"?w6l6

Delphi 7拦截滚轮事件不响应滚轮的上下滚动

unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class(TForm) Panel1: TPanel; ComboBox1: TComboBox; Label1: TLabel; procedure FormCreate(Sender:

Delphi中ADOQuery删除多表中的数据问题

-------------------Delphi 7---- -----本次测试没有用到第三方控件---- ADOquery的多表关联,如果直接ADOquery1.delete;会删除多个表的数据; 如果要删除资料,请另行写SQL语句,有人说把这个SQL语句放在ADOquery1.BeforeDelete中;感觉太麻烦; 这在项目中怎么能行!不好控制啊,删除的统一放一

如何使用 TStringGrid 呈现大量的颜色信息 - 回复 "冷公子" 的问题

如何使用 TStringGrid 呈现大量的颜色信息 - 回复 "冷公子" 的问题 "冷公子" 同学需要在 TStringGrid 中通过颜色显示大量信息, 给出的方案是: 建立一个对应的颜色数组.参考代码:unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics,

如何在 TDrawGrid 的单元格中显示图片 - 回复 "巅枫" 的问题

如何在 TDrawGrid 的单元格中显示图片 - 回复 "巅枫" 的问题 问题来源: http://www.cnblogs.com/del/archive/2008/03/06/1094289.html#2023057在 C:\Temp\ 下准备 1.bmp、2.bmp、3.bmp 三个图片, 然后:unit Unit1; interface uses Windows, Messages, SysUtils, Variant

给定 ComboBox 的默认值

unit Unit1; interfaceuses   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, StdCtrls; type   TForm1 = class(TForm)    ComboBox1: TComboBox;    Button1: TButton;    Button2: TButton;    procedure FormCreate(Se

捕捉 midi 输入消息的基本程序

   捕捉 midi 输入消息的基本程序    uses MMSystem; var hMidiIn: Integer; procedure midiCallBack(hdrvr: HDRVR; uMsg: UINT; dwUser: DWORD; dw1, dw2: DWORD) stdcall; begin   case uMsg of     MIM_OPEN: ;     MIM_CLOSE: ;     MI

现在使用控件, 更喜欢继承

   现在使用控件, 更喜欢继承    以前写代码, 总是把主单元弄得满满当当; 现在更喜欢把控件比较独立的功能写成一个单元, 改写属性、重载方法...哪怕只有一点点和默认不同, 也喜欢独立出来.刚刚用到 TListBox, 需要能拖动元素、双击删除.unit ListBox2; interface uses