求Java中组件透明度的设置方法!

Python016

求Java中组件透明度的设置方法!,第1张

java swing中设置组件透明度的方法如下:

package src

import java.awt.*

import javax.swing.ImageIcon

import javax.swing.JLabel

import javax.swing.JPanel

public   class   MyPanel   extends   JPanel{   

private   Image   image   =   null     

     public   MyPanel(Image image)   {   

               this.image   =   image   

     }   

     //固定背景图片,允许这个JPanel可以在图片上添加其他组件

     protected   void   paintComponent(Graphics   g)   {   

    g.drawImage(image,   0,   0,   this.getWidth(),   this.getHeight(),   this)   

     }   

}

测试JFrame

package src

import java.awt.Image

import javax.swing.ImageIcon

import javax.swing.JButton

import javax.swing.JFrame

import javax.swing.JLabel

import javax.swing.JPanel

public class Test extends JFrame{

JPanel jpanel

JLabel jlabel

JButton jbutton

Image image=new ImageIcon("image/a.jpg").getImage()

ImageIcon labIma=new ImageIcon("image/a.jpg")

Test(){  

   this.setIconImage(image)

   this.setTitle("hello")

   init()

   this.add(jpanel)

}

public void init(){//本方法里面有三种显示图片的方法,两个实现了在图片上添加按钮的功能

   /*第一种方法 通过JLabel简单的设置图片

   jpanel=new JPanel()

   jlabel=new JLabel()

   jlabel.setIcon(labIma)

   jpanel.add(jlabel)

   */

/*第二种方法 这是实现在JLabel添加图片同时在上面添加按钮功能,注意它里面的jpanel不用显示的添加到JFrame中,因此上面构造函数中的this.add(jpanel)要注释掉

jpanel = (JPanel) this.getContentPane() //从JFrame 里面创建一个JPanel

   jpanel.setOpaque(false) //JPanel 透明模式

   jlabel = new JLabel(labIma) //创建个带背景图片的JLabel 

   this.getLayeredPane().add(jlabel, new Integer(Integer.MIN_VALUE))

   jlabel.setBounds(0, 0, labIma.getIconWidth(), labIma.getIconHeight())

   jpanel.setLayout(new FlowLayout())

   JButton jb = new JButton("我是按钮")

   jpanel.add(jb)

*/

/*第三种方法 通过重写JPanel中的paintComponent方法设置背景图片,然后在jpanel上添加组件

   //通过背景图片设置图片 注意MyPanel是自己定义的一个类

   jpanel=new MyPanel(image)

   jbutton=new JButton()

   jbutton.setText("haha")

   jpanel.add(jbutton)

*/

}

public static void main(String args[])

{

Test t=new Test()

t.setSize(400,400)

t.setVisible(true)

}

javajbutton鼠标移上去高光?1、制作一个按钮图标

我在上一篇经验中写了怎么制作一个按钮,我就直接打开这个文件进行添加高光了,有兴趣的小伙伴可以去打开看一下,主要是圆形叠加不同的渐变颜色

2

/8

绘制一个小的椭圆形

在工具栏中选择椭圆形工具,然后在工作区绘制一个椭圆形,放到按钮中观察大小,填充为一个白色

3

/8

旋转放到按钮上

将这个椭圆形调整到适合的大小,然后将鼠标放在边缘的位置,会变为旋转的状态,我们只需要将它旋转一定的角度,摆放在左上角的位置

4

/8

调出渐变面板调节

在窗口菜单栏中将渐变面板勾选,这样就会打开渐变面板了,设置渐变色为白色,然后选择下面的透明度进行设置,将右侧的透明度设置为0

5

/8

拉出渐变效果

在工具栏中选择渐变工具,然后在椭圆形中拉出透明的渐变,让右侧的变色显示为透明,左侧的位置显示为半透明,这样就形成一个高光效果

6

/8

对椭圆形进行调节

如果感觉自己绘制的椭圆形不太协调,可以用直接选择工具会节点进行调整,渐变透明度可以多试几次,反复拉出不透明度的效果

7

/8

进行颜色的更改

如果我们想要绘制其他的按钮,只需要复制一份,将按钮的颜色设置改一下,就形成了一个新的按钮,比如我复制一份,将颜色变为深紫色到紫色的渐变

8

/8

总结:1、启动AI软件,打开按钮

2、绘制一个椭圆形,调节大小,填充白色

3、打开渐变面板,设置白色,对透明度进行调整

4、用渐变工具拉出透明的效果

5、复制一个改变不同的颜色,制作按钮

注意事项

高光的效果我们使用白色的透明度来实现的

给物体加上高光和阴影更有立体感。