java点击
‘壹’ java怎么设置点击按钮跳转
import javax.swing.*;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
//Math.random()*b.length
public class Test extends JFrame implements ActionListener{
private JLabel q;
private JLabel b;
private JTextField b2;
private JButton b1;
private String aa[] = { "公共的", "受保护的", "私有的" };
public Test() {
q = new JLabel();
b = new JLabel("请输入单词");
this.add(q);
this.setVisible(true);
this.setTitle("ii");
this.setSize(420, 320);
this.setLocation(200, 200);
this.setResizable(true);
this.setLayout(new FlowLayout());
this.add(b);
b2 = new JTextField(10);
this.add(b2);
b1 = new JButton("确定");
this.add(b1);
b1.addActionListener(this);
int p = (int) (Math.random() * aa.length);
String o = aa[p];
q.setText(o);
}
public static void main(String[] args) {
Test t = new Test();
}
@Override
public void actionPerformed(ActionEvent e) {
String h = "公共的";
if (h.equals(b2.getText())) {
int i = (int) (Math.random() * aa.length);
q.setText(aa[i]);
}
}
}
要给按钮加监听器
‘贰’ java中控制鼠标点击的方法
//利用 java.awt.Robot 类来自动完成一些键盘或鼠标的动作,下面是一个小例子
//程序流程:模拟鼠标左键点击 开始-->运行-->CMD-->DIR-->CLS-->EXIT
//模拟右键点击 移动到右下角-->右键点击-->调整日期和时间-->退出
import java.awt.*;
import java.awt.event.*;
import javax.swing.JOptionPane;
//Test.java
public class Test {
public static void main(String[] args) throws Exception {
final Robot rb = new Robot();
new Thread(){
public void run(){
rb.delay(2000);
//回车
rb.keyPress(KeyEvent.VK_ENTER);
rb.keyRelease(KeyEvent.VK_ENTER);
}
}.start();
JOptionPane.showMessageDialog(null,"以下程序自动执行,包括本对话框,请不必进行人为干预.\n如果不能正常执行程序,请先关闭输入法");
//设置开始菜单的大概位置
int x = 40;
int y = Toolkit.getDefaultToolkit().getScreenSize().height-10;
//鼠标移动到开始菜单,
rb.mouseMove(x,y);
rb.delay(500);
//单击三次开始菜单
for(int i=0; i<3; i++)
pressMouse(rb,InputEvent.BUTTON1_MASK,500);
rb.delay(1000);
//运行CMD命令 r cmd enter
int[] ks = {KeyEvent.VK_R,KeyEvent.VK_C,KeyEvent.VK_M,KeyEvent.VK_D,KeyEvent.VK_ENTER,};
pressKeys(rb,ks,500);
rb.mouseMove(400,400);
rb.delay(500);
//运行DIR命令 dir enter
ks = new int[]{KeyEvent.VK_D,KeyEvent.VK_I,KeyEvent.VK_R,KeyEvent.VK_ENTER};
pressKeys(rb,ks,500);
rb.delay(1000);
//运行CLS命令 cls enter
ks = new int[]{KeyEvent.VK_C,KeyEvent.VK_L,KeyEvent.VK_S,KeyEvent.VK_ENTER};
pressKeys(rb,ks,500);
rb.delay(1000);
//运行EXIT命令 exit enter
ks = new int[]{KeyEvent.VK_E,KeyEvent.VK_X,KeyEvent.VK_I,KeyEvent.VK_T,KeyEvent.VK_ENTER};
pressKeys(rb,ks,500);
rb.delay(1000);
//右键测试
x=Toolkit.getDefaultToolkit().getScreenSize().width-10;
rb.mouseMove(x, y);
//如果是双键鼠标,请改用InputEvent.BUTTON2_MASK试试,我没有这种鼠标
pressMouse(rb,InputEvent.BUTTON3_MASK,500);
//显示日期调整对话框 a
pressKeys(rb,new int[]{KeyEvent.VK_A},1000);
rb.delay(2000);
pressKeys(rb,new int[]{KeyEvent.VK_ESCAPE},0);
rb.delay(1000);
new Thread(){
public void run(){
rb.delay(1000);
//回车
rb.keyPress(KeyEvent.VK_ENTER);
rb.keyRelease(KeyEvent.VK_ENTER);
}
}.start();
JOptionPane.showMessageDialog(null,"演示完毕!");
}
//鼠标单击,要双击就连续调用
private static void pressMouse(Robot r,int m,int delay){
r.mousePress(m);
r.delay(10);
r.mouseRelease(m);
r.delay(delay);
}
//键盘输入
private static void pressKeys(Robot r,int[] ks,int delay){
for(int i=0; i<ks.length; i++){
r.keyPress(ks[i]);
r.delay(10);
r.keyRelease(ks[i]);
r.delay(delay);
}
}
}
‘叁’ java点击按钮,出现另一个窗口
第一个窗体LoginFrame.java:
package winRelation;
import java.awt.Dimension;
import java.awt.Rectangle;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
public class LoginFrame extends JFrame {
JButton button = new JButton("点击我");
class LoginOKAction implements ActionListener {
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, "将进入另一个窗体!");
new MainFrame();
setVisible(false);
}
}
public LoginFrame(){
super();
this.setResizable(false);
this.setSize(new Dimension(300, 205));
this.setTitle("第一个窗体");
this.setLayout(null);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setLocation(300, 200);
this.setVisible(true);
this.getContentPane().add(button, null);
button.setBounds(new Rectangle(111, 70, 78, 27));
button.addActionListener(new LoginOKAction());//给按钮加事件监听器
}
public static void main(String[] args) {
new LoginFrame();
}
}
第二个窗体MainFrame.java:
package winRelation;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JDesktopPane;
import javax.swing.JFrame;
import javax.swing.JInternalFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JToolBar;
public class MainFrame extends JFrame{
private static final JDesktopPane DESKTOP_PANE = new JDesktopPane();
public MainFrame() {
super("这是主窗体");
setSize(640, 480);
//菜单设置
JMenuBar menuBar = new JMenuBar();
this.setJMenuBar(menuBar);
JMenu menu1 = new JMenu("菜单1");
JMenu menu101 = new JMenu("菜单101");
JMenuItem menu10101 = new JMenuItem("菜单10101");
JMenuItem menu102 = new JMenuItem("菜单102");
menu102.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
addIFame(new InternalFrame());
}
});
menu101.add(menu10101);
menu1.add(menu101);
menu1.add(menu102);
JMenu menu2 = new JMenu("菜单2");
menuBar.add(menu1);
menuBar.add(menu2);
this.getContentPane().add(DESKTOP_PANE);
this.setVisible(true);
}
public static void addIFame(JInternalFrame iframe) { // 添加子窗体的方法
DESKTOP_PANE.add(iframe);
}
public static void main(String[] args) {
new MainFrame();
}
}
第三个窗体(MainFrame中的窗体)InternalFrame.java:
package winRelation;
import javax.swing.JButton;
import javax.swing.JInternalFrame;
public class InternalFrame extends JInternalFrame{
public InternalFrame() {
super();
setClosable(true);
setIconifiable(true);
setTitle("内部窗体");
setBounds(50,50,400,300);
setVisible(true);
}
}
已经测试通过!
‘肆’ java如何不控制鼠标进行点击
windows发送消息postmessage
java调用windows api
github.com java-native-access/jna
‘伍’ Java 程序实现鼠标点击 键盘等事件
这个用MouseListener里的mouseEntered(MouseEvent
e)方法。
鼠标进入区域就产生事件反应。
如果之前申明了点击事件可以在entered时间里呼叫clicked事件。
‘陆’ java 怎样实现点击按钮,关闭程序
给按钮添加 ActionPerform 事件 内容写System.exit(0);
package com.lx;
import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Test implements ActionListener {
Frame f = new Frame();
public static void main(String[] args) {
Test t = new Test();
t.init();
}
private void init() {
Button b = new Button("exit");
b.addActionListener(this);
f.add(b);
f.setLayout(new FlowLayout());
f.setSize(100,100);
f.setVisible(true);
}
public void actionPerformed(ActionEvent arg0) {
f.setVisible(false);
f.dispose();
System.exit(0);
}
}
‘柒’ JAVA鼠标点击事件问题
import javax.swing.*;
import java.awt.*;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class Test {
private JFrame frame;
private JLabel label1;
private boolean flag=true;
public Test()
{
frame=new JFrame("标签测试");
label1=new JLabel("变红",JLabel.CENTER);
label1.setOpaque(true);
label1.addMouseListener(new MouseAdapter()
{
public void mouseClicked(MouseEvent e)
{
if(flag)
{
label1.setBackground(Color.red);
flag=false;
}
else
{
label1.setBackground(Color.white);
flag=true;
}
}
}
);
frame.getContentPane().add(label1,BorderLayout.CENTER);
frame.setSize(300,300);
frame.setLocation(300,300);
frame.setVisible(true);
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
Test t=new Test();
}
}
‘捌’ java鼠标点击事件怎么做
java鼠标点击事件的方法如下:
<spanstyle="font-family:Verdana;">事件源</span>.addMouseListener(newMouseAdapter(){//建立事件处理机制
@Override
publicvoidmouseClicked(MouseEvente){
if(e.getButton()==e.BUTTON1){//点击鼠标左键
intx=e.getX();
inty=e.getY();
Stringstr="您点击的是左键,鼠标当前点击位置的坐标是("+x+","+y+")";
label.setText(str);
}elseif(e.getButton()==e.BUTTON2){//点击鼠标滑轮
intx=e.getX();
inty=e.getY();
Stringstr="您点击的是滑轮,鼠标当前点击位置的坐标是("+x+","+y+")";
label.setText(str);
}
elseif(e.getButton()==e.BUTTON3){//点击鼠标右键
intx=e.getX();
inty=e.getY();
Stringstr="您点击的是右键,鼠标当前点击位置的坐标是("+x+","+y+")";
label.setText(str);
}
}
});
e.getButton()返回值分别为NOBUTTON、BUTTON1、BUTTON2、BUTTON3,分别代表着无点击、左击、中间键、右击三种情况。
‘玖’ java点击事件
package jframe.thread;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
public class MyJFrame extends JFrame
{
/**
*
*/
private JMenuItem jma;
private JMenuItem jmc;
private JMenuItem jmd;
private JMenuItem jme;
private JMenuItem jmf;
private JMenuItem jmg;
private JMenuItem jmh;
private JMenuBar jmb;
private JMenu jm1;
private JMenuItem jmi;
public MyJFrame()
{
jmb = new JMenuBar();
JMenu jm1 = new JMenu("个人信息查询");
jmi = new JMenuItem("按学号查询");
jma = new JMenuItem("按姓名查询");
JMenu jm2 = new JMenu("");
JMenu jm3 = new JMenu("成绩查询");
jmc = new JMenuItem("按姓名查询");
jmd = new JMenuItem("按学号查询");
jme = new JMenuItem("按学年查询");
JMenu jm4 = new JMenu("");
JMenu jm5 = new JMenu("学生寝室管理");
JMenu jm6 = new JMenu("");
JMenu jm7 = new JMenu("信息修改");
JMenuItem jml = new JMenuItem("添加信息");
JMenuItem jmj = new JMenuItem("删除信息");
JMenuItem jmk = new JMenuItem("修改信息");
JMenu jm8 = new JMenu("");
JMenu jm9 = new JMenu("修改密码");
jmf = new JMenuItem("按寝室查询");
jmg = new JMenuItem("按学号查询");
jmh = new JMenuItem("按班级查询");
jm1.add(jmi);
jm1.add(jma);
jm3.add(jmc);
jm3.add(jmd);
jm3.add(jme);
jm5.add(jmf);
jm5.add(jmg);
jm5.add(jmh);
jm7.add(jml);
jm7.add(jmj);
jm7.add(jmk);
jmb.add(jm1);
jmb.add(jm2);
jmb.add(jm3);
jmb.add(jm4);
jmb.add(jm5);
jmb.add(jm6);
jmb.add(jm7);
jmb.add(jm8);
jmb.add(jm9);
setJMenuBar(jmb);
setBounds(20,20,1050,700);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setResizable(false); //窗口大小锁定,设置后,无法通过鼠标拖动,调整大小。
//如果锁定了窗口,那么最大化窗口的按钮将被自动禁用
validate(); //刷新窗口的作用(有时候会碰到窗口添加组件后,无法
//正常显示,调整窗口大小后,才能看到。这个方法避免该情况发生)
jmd.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){
MyThread thread1=new MyThread();
thread1.start();//调用start()后,自动执行run()
}
});
}
class MyThread extends Thread{ //加一个线程
public void run(){
JFrame frame1 = new JFrame();
frame1.setVisible(true);
frame1.setTitle("按学号查询");
frame1.setSize(300,300);
}
}
public static void main(String args[]){
MyJFrame myframe = new MyJFrame();
myframe.setVisible(true);
myframe.setTitle("学生信息管理系统");
}
}