
我需要制作一个包含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) 如何在将文本粘贴到TMemo之前捕获粘贴命令并更改剪贴板的文本,但是,粘贴后,剪贴板中的文本必须与更改之前相同?
例如,剪贴板上有文字'简单问题',TMemo中的文字是'СимплeQуeстиoн',之后剪贴板中的文字就像更改之前的'简单问题'.
如何正确地向前和向后移动字幕时间?字幕时间格式如下所示:
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) 我想在打开该文件之前知道图像文件的宽度和高度.
那么,该怎么做?
编辑:这是指jpg,bmp,png和gif类型的图像文件.
例如,两位数字有4种组合:11,12,21,22.三位数字有8种组合:111,112,... 222.
谢谢
PS这是指Delphi :)
在表格上我有两个TImages.位于顶部的TImage应该是透明的,因此我们可以看到底层的内容.如何改变TImage透明度的水平?
例:

我刚开始在Delphi中使用Frames.
那些帧在FrameBar1中,它们都是可见的.仅用于测试,第一个包含一个Button,第二个包含一个Edit.
我想在编辑中更改文本,单击按钮(两个不同的框架上的控件).
如何在帧之间进行通信?
我使用此代码删除重复项:
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 ×9
image ×2
transparency ×2
combinations ×1
delphi-xe ×1
detect ×1
dimensions ×1
frames ×1
image-size ×1
intercept ×1
listbox ×1
memo ×1
numbers ×1
paste ×1
shift ×1
subtitle ×1