-
一个无标题栏窗体 如何拖动?Delphi方法示例
本源码主要演示,Delphi如何拖动一个无标题栏的窗体,此前记得与大分享过不少VB类的相似源码,大部分情况下,我们习惯拖动窗口的标题栏来移动窗口,现在我们把窗口的标题栏去掉了,那么是如何实现窗口的拖动呢?其实我们可以拖动窗口的主窗口部位,同样可以拖动窗口,而且这样似乎更方便操作,关于代码的实现,请大家下载源码后,查看Unit1.pas文件。
- 2022-09-30 14:35:03下载
- 积分:1
-
Delphi获取和设置汉字输入法
Delphi 获取系统中已安装的中文输入法,判断是否在中文状态,若是则关闭它,切换半角和全角模式,切换中文标点模式和英文标点模式,并对输入法做相关设置。以下是相关代码:
procedure TForm1.closecid;
var
mycid:hkl;
begin
mycid:=GetKeyBoardLayOut(0);
if ImmIsIME(mycid) then
//判断是否在中文状态,若是则关闭它
immsimulateHotkey(handle,IME_CHotKey_IME_NonIME_Toggle);
end;
procedure TForm1.FormShow(Sender: TObject);
var
j:integer;
begin
for j:=0 to screen.imes.count-1 do
begin
//获取系统中已安装的中文输入法
ComBoBox1.Items.Add(screen.Imes.strings[j]);
end;
end;
- 2022-10-19 03:05:03下载
- 积分:1
-
Delphi数据库编程案例:教材管理系统源码
这是一款基于Delphi和Access数据库的编程案例:教材管理系统源码,经过修正完善后可作为学校的教材管理程序,功能模块主要有:系统功能设置、教材资料输入、教材出入库管理、教材信息管理等。
- 2022-04-14 14:29:20下载
- 积分:1
-
Delphi 限制窗口最大化显示
Delphi 限制窗口最大化显示,当用户单击最大化按钮后,窗口稍微变大了一点,但并没有最大化,有时候,我们需要限制,不让窗口最大化,在编写实现此功能时,定义了WMGetMinMaxInfo,以下代码在函数中定义,用户操作按钮,激活函数:
with Message.MinMaxInfo^ do
begin
ptMaxSize.X := 400; //最大化时宽度
ptMaxSize.Y := 300; //最大化时高度
ptMaxPosition.X := 120; //最大化时左上角横坐标
ptMaxPosition.Y := 120; //最大化时左上角纵坐标
end;
Message.Result := 0; //通知Windows改变了minmaxinfo
- 2022-01-24 18:38:10下载
- 积分:1
-
Delphi 打印图形(图片)
Delphi 打印图形,把图片打印出来,通过这个例子,你可以学习到:
strect:Trect;//定义打印输出矩形框的大小
temhi,temwd:integer;
begin
if DIGPrint.execute then
begin
temhi:=imgpic.picture.height;
temwd:=imgpic.picture.width;
while (temhi = printer.pageheight div 2)and
//将图形放大到打印页面的1/2大小
(temwd = printer.pagewidth div 2) do
begin
temhi:=temhi+temhi;
temwd:=temwd+temwd;
end;
with strect do //定义图形在页面上的中心位置输出
begin
left := (printer.pagewidth -temwd) div 2;
top := (printer.pageheight-temhi) div 2;
right := left+temwd;
bottom := top+temhi;
end;
with printer do
begin
begindoc;
canvas.stretchdraw(strect,imgpic.picture.graphic);
enddoc;
end;
end;
- 2022-10-24 23:35:04下载
- 积分:1
-
Delphi7删除字符串指定字符(汉字)的例子
Delphi7删除字符串指定字符的例子,如图所示的运行效果,示例如下文字:“经过这几天在网上的淘金,多少也有些了解了,但是现在我发现就算将分区正确的话,分区所指向的目录区也许会有些问题。”,删除指定的文字为“在”,本例中将上述一段文字中所有的“在”全部删除,在代码部分,各个变量的定义有意思:
Strs, //文本字符串
Stre, //汉字字符串
St, //文本ASCII码
Se, //汉字ASCII码
L_St, //临时文本ASCII码
L_Se, //临时汉字ASCII码
Str_copy //保存文本
: String;
Ints, //文本总长度
Inte, //删除汉字长度
i, //文本循环
p, //汉字循环
ps, //文本指针变量
pe, //汉字指针变量
Int_zh, //找到时保存汉字位置
Int_ch //循环查找时的变量
- 2022-03-23 19:03:00下载
- 积分:1
-
Delphi 将TDBGrid导入到Excel表中附数据库
Delphi7.0将TDBGrid导入到Excel表中,测试程序先连接好SQLSERVER数据库,并将数据读取到TDBGrid中,然后再将数据从TDBGrid导入到Excel表中,为了测试方便,SQLSERVER数据库文件已经附在源码包中。以下代码片断会有参考意义,完整源码请下载:
//将TDBGrid表中的标题插入到Excel表中的首行
for I:=0 to DbName.Columns.Count-1 do
begin
if DbName.Columns[i].Visible=False then
Continue;
Page.Cells[j,i+1] := DbName.Columns[i].Title.Caption;
Page.Cells[j,i+1].Font.Bold := True; //设置字体为粗体
end;
Inc(j); //Excel表中的下一行
First; //将指针返回到TDBGrid表中数据的首行
while not Eof do
begin
for i:=0 to DbName.Columns.Count-1 do
begin
if DbName.Columns[i].Visible=False then
Continue;
//将指定行中每列的数据,添加到Excel表中
Page.Cells[j,i+1] := trim(DbName.DataSource.DataSet.Fieldbyname(DbName.Columns[i].FieldName).asstring);
end;
Inc(j); //Excel表中的下一行
Next; //TDBGrid表中的下一条记录
end;
- 2022-06-29 23:05:07下载
- 积分:1
-
Delphi创建透明图像效果的窗体
Delphi创建透明图像效果的窗体,这个示例实际是演示调用透明图片并显示的效果,用此制作成一个无边框且透明的窗口,制作时需要把此窗口设为Desktop型的。图片最好是BMP或PNG透明格式的,这样当图片显示时,会显示为一个无边框的透明窗口,没有图像的部分会显示窗口下层的内容,演示了一种制作透明窗口的方法。
- 2022-02-25 21:57:42下载
- 积分:1
-
Delphi 演示0~N位数的任意组合
Delphi 数列的排列组合一例,演示0~N位数的任意组合,组合的数字在0~5之间,需要输入1~6整数,排列结果会显示在文本框组件中。要点代码如下:
ssList := TStringList.Create;
try
if (nBase < 1) then
begin
end
else
begin
if (sList.Count = 0) then
begin
for nIdx := 0 to num-1 do
ssList.Add(a[nIdx]);
end
else
begin
for nIdx := 0 to num-1 do
for nSidx := 0 to sList.Count-1 do
if (Pos(a[nIdx], sList.Strings[nSidx]) = 0) then
ssList.Add(a[nIdx]+sList.Strings[nSidx]);
end;
Combine(nBase-1, ssList);
end;
if ssList.Count > 0 then
begin
sList.Clear;
sList.Text := ssList.Text;sslist.Count
end;
finally
ssList.Free;
end;
- 2022-04-29 16:59:03下载
- 积分:1
-
Delphi 如何使程序不出现在任务栏上
Delphi 如何使程序不出现在任务栏上,常规情况下,运行的程序都会在任务栏有一个图标窗口,方便用户操作,不出现在任务栏上也可以,不过不太符合常规,有点隐藏程序的嫌疑,以下代码是实现此功能的:
procedure TForm1.FormCreate(Sender: TObject);
begin
with Application do
SetWindowLong(Handle,GWL_EXSTYLE,GetWindowLong(Handle,GWL_EXSTYLE) and not WS_EX_APPWINDOW or WS_EX_TOOLWINDOW);
SetWindowPos(Handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE or SWP_NOSIZE);
end;
- 2023-03-26 04:55:03下载
- 积分:1