我在shell上使用SWT setAlpha()方法。透明度正常工作在KDE和GNOME環境,即在輸入端子:如何在沒有窗口管理器的SWT中製作透明shell?
java -jar program.jar
,但是當我開始在純X我的Java應用程序,而窗口管理器外殼是不是透明的,並具有白色背景。我用startx命令和X執行我的〜/ .xinitrc腳本,它包含:
public void showTransparentShell() {
transparentShell = new Shell(shell, SWT.NO_TRIM);
transparentShell.setAlpha(120);
transparentShell.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_WHITE));
transparentShell.setBounds(shell.getBounds());
AlphaEffect.fadeOnClose(transparentShell, 900, new ExpoOut(), animationRunner);
transparentShell.open();
AlphaEffect.setAlpha(animationRunner, transparentShell, 160, 900, new ExpoOut(), null, null);
}
我使用SWT-3.7-2和GTK的3.2:
cd /home/user
java -jar ./program.jar
這裏是方法的代碼。 0
Linux在透明度方面需要什麼?必須爲 「透明度效果」安裝哪些組件/庫/軟件包才能正常工作?
編輯:谷歌上搜索後數小時我碰到的解決方案來了,我只是我的java程序啓動前KWIN:
kwin&
cd /home/user
java -jar ./program.jar
唯一的問題是不是KWIN是相當大的,有很多依賴關係的。我必須在256 MB內存的計算機上運行我的程序,所以也許有人知道有點輕的窗口管理器支持透明度,並將與Kwin一樣用SWT工作?