使窗口从软件项目中透明化

使窗口从软件项目中透明化

我编写了一个非常简单的软件,里面只有一个窗口,没有任何内容,并且我使用以下代码使窗口变得透明。

window.alphablend:=true;
window.alphablendvalue:=133; //0 to 255

软件编译成功,执行时软件窗口透明地弹出在屏幕上。好吧,这是我的问题。

我有两台完全相同的笔记本电脑(型号、品牌等),两台都运行最新的 UBUNTU。但是,其中一台只是一台普通笔记本电脑,配有 11 英寸显示屏,另一台笔记本电脑通过 HDMI 电缆连接到电视。

当我在普通笔记本电脑上运行此透明窗口软件时,窗口会按预期弹出,部分透明。当我获取此软件的精确副本并在通过 HDMI 连接连接到电视的笔记本电脑上运行它时,会弹出透明软件窗口,但完全不透明。

我查看了 UBUNTU 中的所有设置,但确实找不到任何可以调整或更改以使其正常工作的内容。

我的问题是为什么会发生这种情况以及如果有办法该如何解决它。

编辑:这个程序里什么都没有。它就像任何带有 HELLO WORLD 示例代码的编程语言一样。

unit Unit1;

{$mode objfpc}{$H+}

interface

uses
    Classes, SysUtils, Forms, Controls, Graphics, Dialogs;

type

{ TForm1 }

TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
private

public

end;

var
    Form1: TForm1;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.FormCreate(Sender: TObject);
begin
    self.alphablend:=true;
    self.alphablendvalue:=133; //0 to 255
end;
end.

至于版本,我当时做这个测试时下载的就是这个版本。很可能是 22.04

相关内容