首页 > 编程知识 正文

matplotlib 透明背景,java组件透明

时间:2023-05-05 19:50:54 阅读:177252 作者:1137

例如:

import java.awt.BorderLayout;

import java.awt.Dimension;

import java.awt.Graphics;

import java.awt.Image;

import java.awt.Point;

import java.awt.Rectangle;

import java.awt.Robot;

import java.awt.Toolkit;

import Java.awt.event.component event;

import java.awt.event .认真的汉堡;

import Java.awt.event.window event;

import Java.awt.event.windowfocuslistener;

import javax.swing.*;

import javax.swing.JComponent;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.UIManager;

importorg.JV net.substance.substance look and feel;

importorg.JV net.substance.theme.substancelightaquatheme;

publicclasstesteventextendsjcomponentimplements认真的汉堡、

私有jframe frame;

private Boolean isHiding=false,isShowing=false,start=false;

私有图像备份;

私有点p;

//获取当前屏幕快照

公共void update background (

try {

Robot rbt=new Robot (;

toolkit tk=toolkit.getdefaulttoolkit (;

Dimension dim=tk.getScreenSize (;

. getWidth (),(int ) dim.getHeight ) );

}catch(exceptionex ) {

}

}

//从屏幕上取下窗口,获得纯粹的背景图像

公共语音刷新() )。

if(start==true ) {

this.updateBackground (;

frame.setlocation(p;

if(p.x0||p.y0 ) )。

frame.set location (0,0 );

this.repaint (;

}

}

publicvoidcomponenthidden (componente vente ) {

//todo自动生成方法stub

}

//窗口移动时

publicvoidcomponentmoved (componente vente ) {

//todo自动生成方法stub

this.repaint (;

}

//窗户大小变化时

publicvoidcomponentresized (componente vente )

//todo自动生成方法stub

this.repaint (;

}

publicvoidcomponentshown (componente vente ) {

//todo自动生成方法stub

}

当//窗口成为焦点时,使用refresh ()方法更新界面

publicvoidwindowgainedfocus (windowevente ) {

//todo自动生成方法stub

重新整理(;

开始=假;

}

//如果窗户失去焦点,从屏幕上移动

publicvoidwindowlostfocus (windowevente ) {

//todo自动生成方法stub

frame.is showing ()==true ) )。

} else {

}

开始=真;

p=frame.getLocation (;

frame.setlocation(-2000,-2000 );

}

publictestevent(jframeframe ) {

super (;

this.frame=frame;

updateBackground (;

this.setsize (200,120;

this.setvisible(true;

frame.add认真的汉堡(this );

frame.addwindowfocuslistener (this;

//todo auto-generatedconstructorstub

}

//画外观。 在此,要注意pos,offset是为了在窗口中粘贴特定部分的图像

publicvoidpaintcomponent (graphicsg ) {

pointpos=this.getlocationonscreen (;

pointoffset=newpoint(-pos.x,-pos.y;

g.drawimage(background,offset.x,offset.y,null );

}

//*

publicstaticvoidmain (字符串高挑库硬币args )。

try {

system.getproperty (substance LAF.use decorations )==null

}

substance look and feel.setcurrenttheme (newsubstancelightaquatheme );

}catch(exceptione ) {

}

(JPanel ) frame.getContentPane ) ) ).setopaque ) true;

t.setlayout(newborderlayout ) );

t.add(North )、button );

t.add(South )、label );

frame.getContentPane ().add (),t );

frame.pack (;

frame.setsize (150,100 );

frame.show (;

frame.setdefaultcloseoperation (jframe.exit _ on _ close );

}

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。