java画板中画直线_java画板,如何将画板透明 但所画的线不随之透明

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

还有另一个问题,为什么在代码的开头部分,添加的文本框在显示结果中并没有运行出来

34a76f03c8416d7c0afdf8b7150a0b04.png

这是0.9的透明度

import java.awt.*;

import java.awt.event.*;

import java.awt.Graphics;

import javax.swing.JFrame;

import java.awt.FlowLayout;

import javax.swing.JOptionPane;

import java.awt.BorderLayout;

import java.awt.Dimension;

import java.awt.Shape;

import java.awt.Toolkit;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.ComponentAdapter;

import java.awt.event.ComponentEvent;

import java.awt.geom.Area;

import java.awt.geom.Ellipse2D;

import java.awt.geom.RoundRectangle2D;

import java.io.IOException;

import java.util.logging.Level;

import java.util.logging.Logger;

import javax.imageio.ImageIO;

import javax.swing.JFrame;

import javax.swing.JTextField;

import javax.swing.SwingUtilities;

import javax.swing.UIManager;

import javax.swing.JOptionPane;

public class TestMouseKey extends Frame {

/**

*

*/

private static final long serialVersionUID = 1L;

private JTextField

JTextField =new JTextField(500);

JTextField txt1=new JTextField(10);

JTextField txt2=new JTextField(10);

JTextField txt3=new JTextField(10);

JTextField txt4=new JTextField(500);

void JTextFiled(){

setLayout(new FlowLayout());

add(txt1);

add(txt2);

add(txt3);

add(txt4);

}

int startX,startY,endX,endY;

TestMouseKey() {

final Frame f = new Frame("电子白板");

f.setAlwaysOnTop(true);

f.setLocationRelativeTo(null);

f.setVisible(true);

if (com.sun.awt.AWTUtilities.isWindowOpaque(f))

{

// 设置窗体透明化, 透明参数值[0, 1](float类型)

com.sun.awt.AWTUtilities.setWindowOpacity(f, 0.1f);

} else {

JOptionPane.showMessageDialog(this, "系统不支持 JDK版本过低或JRE系统库缺损");}

f.addMouseListener(new MouseAdapter(){

public void mousePressed(MouseEvent e){

startX = e.getX();

startY = e.getY();

}

public void mouseReleased(MouseEvent e){

Graphics g = f.getGraphics();

endX = e.getX();

endY = e.getY();

g.drawLine(startX,startY,endX,endY);

}

});

f.addMouseMotionListener(new MouseAdapter(){

public void mouseDragged(MouseEvent e){

endX = e.getX();

endY = e.getY();

f.getGraphics().drawLine(startX,startY,endX,endY);

startX=endX;

startY=endY;

}

});

f.addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e){

System.exit(0);

}

});

Toolkit toolkit = Toolkit.getDefaultToolkit();

Dimension dm = toolkit.getScreenSize();

this.setSize(dm); //将画板变为全屏大小

this.setUndecorated(true);

f.setVisible(true);

}

private void setDefaultCloseOperation(int i) {

// TODO Auto-generated method stub

}

public static void main(String args[]){

new TestMouseKey();

}

public JTextField getJTextField() {

return JTextField;

}

public void setJTextField(JTextField jTextField) {

JTextField = jTextField;

}

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值