小编Srd*_*ica的帖子

11
推荐指数
1
解决办法
743
查看次数

如何在保持组件可见的同时使表单透明?

我需要制作一个包含PNG图像和透明区域的表格的程序.表格必须是隐形的,而图像必须保持可见,透明区域必须保持透明.问题是图像透明度.在这种情况下,主窗体是透明的,不可见的,而所有组件/控件都保持可见.但是,PNG图像的透明区域不保持透明度.如何保持透明度?

   procedure MakeTransparent;
   var
   AControl: TControl;
   A, Margin, X, Y, CtlX, CtlY: Integer;
   begin
     Margin    := (Width - ClientWidth) div 2;
     FullRgn   := CreateRectRgn(0, 0, Width, Height);
     X         := Margin;
     Y         := Height - ClientHeight - Margin;
   ClientRgn := CreateRectRgn(X, Y, X + ClientWidth, Y + ClientHeight);
   CombineRgn(FullRgn, FullRgn, ClientRgn, RGN_DIFF);
   for A := 0 to ControlCount - 1 do
   begin
    AControl := Controls[A];
    if (AControl is TWinControl) or (AControl is TGraphicControl) then with        AControl do
   begin
    if Visible then …
Run Code Online (Sandbox Code Playgroud)

delphi transparency transparent-control

11
推荐指数
1
解决办法
2万
查看次数

如何拦截(检测)粘贴命令到TMemo?

如何在将文本粘贴到TMemo之前捕获粘贴命令并更改剪贴板的文本,但是,粘贴后,剪贴板中的文本必须与更改之前相同?

例如,剪贴板上有文字'简单问题',TMemo中的文字是'СимплeQуeстиoн',之后剪贴板中的文字就像更改之前的'简单问题'.

delphi paste detect memo intercept

7
推荐指数
2
解决办法
4659
查看次数

如何在SRT(SubRip)文件中纠正/移动字幕时间?

如何正确地向前和向后移动字幕时间?字幕时间格式如下所示: 00:00:52,656 --> 00:00:56,326

如果字幕和音频不同步,例如,在语音/音频之前显示字幕,00:00:52,656 --> 00:00:56,326则应校正字幕行的所有时间(时间格式:).

因此,如果所有字幕行的时间必须改变/移位2秒.然后,这次是字幕行:00:00:52,656 --> 00:00:56,326应该改为: 00:00:54,656 --> 00:00:58,326.

这指的是字幕文件中的所有时间,而不仅仅是一行文本/一次.


SubRip(.srt)文件的示例:

1
00:00:52,656 --> 00:00:56,326
Kanalska Zona: Panama

2
00:00:56,335 --> 00:00:59,755
Francuzi su pokušali da izgrade
kanal pre Amerikanaca.
Run Code Online (Sandbox Code Playgroud)

delphi shift subtitle

6
推荐指数
1
解决办法
3847
查看次数

如何在Delphi中获取图像文件的尺寸?

我想在打开该文件之前知道图像文件的宽度和高度.

那么,该怎么做?

编辑:这是指jpg,bmp,png和gif类型的图像文件.

delphi image dimensions image-size

5
推荐指数
3
解决办法
1万
查看次数

如何从只包含两个不同数字的某个数字中获取组合数?

例如,两位数字有4种组合:11,12,21,22.三位数字有8种组合:111,112,... 222.

  • 如何获得具有4,5,... 10或更多位数的数字组合?

谢谢

PS这是指Delphi :)

delphi combinations numbers

4
推荐指数
1
解决办法
433
查看次数

如何在Delphi中制作alpha透明TImage?

在表格上我有两个TImages.位于顶部的TImage应该是透明的,因此我们可以看到底层的内容.如何改变TImage透明度的水平?

例: 在此输入图像描述

delphi transparency image alpha-transparency

4
推荐指数
1
解决办法
6663
查看次数

使用框架(Delphi)

我刚开始在Delphi中使用Frames.

那些帧在FrameBar1中,它们都是可见的.仅用于测试,第一个包含一个Button,第二个包含一个Edit.

我想在编辑中更改文本,单击按钮(两个不同的框架上的控件).

如何在帧之间进行通信

delphi frames

2
推荐指数
1
解决办法
1233
查看次数

如何删除ListBox中的重复项?

我使用此代码删除重复项:

procedure TForm1.RemoveDuplicates(StrList : TStringList);
var   NoDuplicate: TStringList;
      i: Integer;
begin
  NoDuplicate := TStringList.Create;
  try
    NoDuplicate.Sorted := True;
    NoDuplicate.Duplicates := dupIgnore;
    ///
    for i := 0 to StrList.Count - 1 do
    NoDuplicate.Add(StrList[i]) ;
    ///
    NoDuplicate.Sorted:= False;
    StrList.Assign(NoDuplicate) ;
  finally
    NoDuplicate.Free;
  end;
end;  
Run Code Online (Sandbox Code Playgroud)

它工作正常.但是"dupIgnore"的问题在于它不区分大小写.例如,"dupIgnore"的"rodeo"和"Rodeo"是重复的,尽管它们不是.如何解决这个问题?

delphi listbox duplicate-removal

1
推荐指数
1
解决办法
232
查看次数