![使窗口从软件项目中透明化](https://linux22.com/image/1198567/%E4%BD%BF%E7%AA%97%E5%8F%A3%E4%BB%8E%E8%BD%AF%E4%BB%B6%E9%A1%B9%E7%9B%AE%E4%B8%AD%E9%80%8F%E6%98%8E%E5%8C%96.png)
我编写了一个非常简单的软件,里面只有一个窗口,没有任何内容,并且我使用以下代码使窗口变得透明。
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