日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java 按钮键盘,java中关于键盘代替按钮的一些有关问题(是代替)~

發布時間:2025/4/16 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 按钮键盘,java中关于键盘代替按钮的一些有关问题(是代替)~ 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Java codeimport java.awt.*;

import java.awt.event.*;

import java.text.SimpleDateFormat;

import java.util.*;

import javax.swing.*;

import javax.swing.border.*;

public class TestTimePiece extends JFrame {

ControlPanel controlPane = null; //-----------------控制面板

JTextField jTextField;

public TestTimePiece() {

super();

init();

}

private void init() {

controlPane = new ControlPanel(this);

add(controlPane);

setPreferredSize(new Dimension(300, 170));

pack();

setVisible(true);

setResizable(false);

this.setLocationRelativeTo(null);

this.setDefaultCloseOperation(EXIT_ON_CLOSE);

addKeyListener(new TimePieceKeyListener());

}

public static void main(String[] args) {

new TestTimePiece();

;

}

class TimePieceKeyListener extends KeyAdapter {

public void keyReleased(KeyEvent e) {

controlPane.keyReleased(e);

}

}

}

class ControlPanel extends JPanel {

private JFrame snakeFrame = null;

JLabel jLabel,jLabel1, jLabel2, jLabel3, jLabel4;

Date dateWhenStartJpanel;//保存程序啟動時的時間

Date dateWhenClickF5;

Thread thread ;

public ControlPanel(JFrame snakeFrame) {

super();

this.snakeFrame = snakeFrame;

init();

}

private void init() {

dateWhenStartJpanel = new Date();

setSize(608, 31);

setBackground(Color.WHITE);

setLayout(new FlowLayout());

setBorder(new LineBorder(Color.white, 5));

setLayout(new FlowLayout());

jLabel = new JLabel();

jLabel1 = new JLabel();

jLabel2 = new JLabel();

jLabel3 = new JLabel();

jLabel4 = new JLabel();

add(jLabel);

add(jLabel1);

add(jLabel2);

add(jLabel3);

add(jLabel4);

jLabel.setText("F5:開始計時 F6:停止計時");

}

public void keyReleased(KeyEvent e) {

int keyCode = e.getKeyCode();

if (keyCode == KeyEvent.VK_F5) {

dateWhenClickF5 = new Date();//sava time when click F5

thread = new Thread(new TimePieceRunnable())

;thread.start();

} else if (keyCode == KeyEvent.VK_F6) {

if(thread != null)thread.stop();

else prompt("請先按F5");

}

}

class TimePieceRunnable implements Runnable {

public void run() {

while (true) {

Date tempDate = new Date();

String tempString = formateToTime(tempDate, "現在時間是 E kk:mm:ss:");

jLabel1.setText(tempString);

tempString = formateToTime(dateWhenStartJpanel,

"啟動程序時間是 E kk:mm:ss:");

jLabel2.setText(tempString);

tempString = formateToTime(dateWhenClickF5,

"最近一次按動F5時間是 E kk:mm:ss:");

jLabel3.setText(tempString);

tempDate = getMillisOfTimeDifference(dateWhenClickF5, tempDate);

tempString = formateToTime(tempDate,

"最近一次按動F5到現在的時間差是 kk:mm:ss:");

jLabel4.setText(tempString);

try {

repaint();

Thread.sleep(100);每隔0.1秒刷新一次

} catch (InterruptedException e) {

e.printStackTrace();

}

}

}

}

public String formateToTime(Date date, String timeRegex) {

//Date date = new Date();

//SimpleDateFormat f = new SimpleDateFormat("'BeiJing Time':yyyy年MM月dd日 E kk時mm分ss秒");

SimpleDateFormat f = new SimpleDateFormat(timeRegex);

String newTypeDate = f.format(date);

return newTypeDate;

}

public Date getMillisOfTimeDifference(Date date1, Date date2) {

Calendar calendar = Calendar.getInstance();

calendar.setTime(date1);

long timelnMillis1 = calendar.getTimeInMillis();

calendar.setTime(date2);

long timelnMillis2 = calendar.getTimeInMillis();

calendar.setTimeInMillis(timelnMillis2 - timelnMillis1);

return calendar.getTime();

}

private static int prompt(String promptMessage) {

return JOptionPane.showConfirmDialog(null, promptMessage, "友情提示",

JOptionPane.WARNING_MESSAGE);

}

}

總結

以上是生活随笔為你收集整理的java 按钮键盘,java中关于键盘代替按钮的一些有关问题(是代替)~的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。