色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Java在半透明框架/面板/組件上重新繪畫(huà)

瀏覽:91日期:2024-05-07 16:15:31
(adsbygoogle = window.adsbygoogle || []).push({}); 如何解決Java在半透明框架/面板/組件上重新繪畫(huà)?

我有一些運(yùn)氣可以擴(kuò)展JLabel和實(shí)現(xiàn),Icon以使半透明組件按我想要的方式工作。你可以在此AlphaCompositeDemo中看到各種規(guī)則組合的結(jié)果。下面的示例是100%白色,50%黑色。

附錄:請(qǐng)注意,此示例如何在半透明框架背景上的透明屏幕外背景上合成不透明文本。

附錄:這是使整個(gè)框架透明的一種方法。不幸的是,它也使內(nèi)容變暗。

import java.awt.AlphaComposite;import java.awt.Color;import java.awt.Dimension;import java.awt.EventQueue;import java.awt.Font;import java.awt.FontMetrics;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.RenderingHints;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.image.BufferedImage;import java.text.SimpleDateFormat;import java.util.Date;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.Timer;public class Translucent extends JPanel implements ActionListener { private static final int W = 300; private static final int H = 100; private static final Font font =new Font('Serif', Font.PLAIN, 48); private static final SimpleDateFormat df =new SimpleDateFormat('HH:mm:ss'); private final Date Now = new Date(); private final Timer timer = new Timer(1000, this); private BufferedImage time; private Graphics2D timeG; public Translucent() {super(true);this.setPreferredSize(new Dimension(W, H));timer.start(); } @Override protected void paintComponent(Graphics g) {Graphics2D g2d = (Graphics2D) g;g2d.setRenderingHint( RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);int w = this.getWidth();int h = this.getHeight();g2d.setComposite(AlphaComposite.Clear);g2d.fillRect(0, 0, w, h);g2d.setComposite(AlphaComposite.Src);g2d.setPaint(g2d.getBackground());g2d.fillRect(0, 0, w, h);renderTime(g2d);int w2 = time.getWidth() / 2;int h2 = time.getHeight() / 2;g2d.setComposite(AlphaComposite.SrcOver);g2d.drawImage(time, w / 2 - w2, h / 2 - h2, null); } private void renderTime(Graphics2D g2d) {g2d.setFont(font);String s = df.format(Now);FontMetrics fm = g2d.getFontMetrics();int w = fm.stringWidth(s);int h = fm.getHeight();if (time == null && timeG == null) { time = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB); timeG = time.createGraphics(); timeG.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON); timeG.setFont(font);}timeG.setComposite(AlphaComposite.Clear);timeG.fillRect(0, 0, w, h);timeG.setComposite(AlphaComposite.Src);timeG.setPaint(Color.green);timeG.drawString(s, 0, fm.getAscent()); } private static void create() {JFrame f = new JFrame();f.setDefaultCloSEOperation(JFrame.EXIT_ON_CLOSE);f.setBackground(new Color(0f, 0f, 0f, 0.3f));f.setUndecorated(true);f.add(new Translucent());f.pack();f.setLocationRelativeto(null);f.setVisible(true); } @Override public void actionPerformed(ActionEvent e) {Now.setTime(System.currentTimeMillis());this.repaint(); } public static void main(String[] args) {EventQueue.invokelater(new Runnable() { @Override public void run() {create(); }}); }}解決方法

我正在嘗試在OSX上使用Java創(chuàng)建一個(gè)半透明窗口并將其添加JLabel到其中。

這JLabel每秒更改一次文本。

替代文字

但是,該組件不能很好地重新粉刷。

我怎么解決這個(gè)問(wèn)題?

我已經(jīng)找到了這些 文章,但是我不知道該如何解決。

如果可能,請(qǐng)粘貼修復(fù)源代碼,這是我的:

import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.JLabel;import java.awt.Color;import java.awt.Font;import java.util.Timer;import java.util.TimerTask;public class Translucent { public static void main( String [] args ) {JFrame frame = new JFrame();frame.setBackground( new Color( 0.0f,0.0f,0.3f));final JLabel label = new JLabel("Hola");label.setFont( new Font( label.getFont().getFamily(),Font.PLAIN,46 ) );label.setForeground( Color.white );frame.add( label );frame.pack();frame.setLocationRelativeTo( null );frame.setVisible( true );Timer timer = new Timer();timer.schedule( new TimerTask(){ int i = 0; public void run() {label.setText("Hola "+ i++ ); }},1000 ); } }

標(biāo)簽: java
相關(guān)文章:
主站蜘蛛池模板: 亚洲美女黄色片 | 国产步兵社区视频在线观看 | 91桃色成人免费 | 亚洲国产精久久久久久久春色 | 看日本真人一一级特黄毛片 | 亚洲国产最新在线一区二区 | 国产短裙黑色丝袜在线观看下 | 欧美一级在线免费观看 | 国产欧美另类久久久精品免费 | 国产91丝袜在线播放九色 | 国产亚洲精品精品国产亚洲综合 | 中文字幕日韩精品有码视频 | 99视频网| 中文字幕亚洲综合久久男男 | 无圣光福利视频 | 成人免费在线播放 | 亚洲免费看片 | 亚洲视频在线观看免费视频 | 最近中文字幕免费视频 | 久久影院一区二区三区 | 欧美精品久久一区二区三区 | 99手机在线视频 | 亚洲成人高清在线 | 一级 黄 色 片免费 一级aaaaaa毛片免费 | 成人久久18免费网站入口 | 久久99精品久久只有精品 | 日韩在线视频不卡一区二区三区 | 免费观看日本高清a毛片 | 伊人久热这里只有精品视频99 | 香港一级特黄高清免费 | 国产成人盗摄精品 | 2022男人天堂| 一及黄色毛片 | 国产日产欧美精品一区二区三区 | 日韩精品视频免费在线观看 | 91香蕉视| 免费99视频有精品视频高清 | 国产精品成人久久久久 | avtt加勒比手机版天堂网 | 国产精品99久久久久久小说 | 99精品国产高清一区二区三区香蕉 |