老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業(yè)提供網(wǎng)站建設(shè)、域名注冊(cè)、服務(wù)器等服務(wù)

鍵盤(pán)按下釋放java代碼 java監(jiān)聽(tīng)鍵盤(pán)按鍵

java程序設(shè)計(jì)用代碼怎樣編寫(xiě)一個(gè)“鍵盤(pán)事件”?

創(chuàng)建一個(gè)關(guān)于鍵盤(pán)事件的程序。該程序?qū)崿F(xiàn)了當(dāng)用戶按下鍵盤(pán)時(shí),程序中的一個(gè)面板中將顯示用戶的鍵盤(pán)輸入。為了實(shí)現(xiàn)對(duì)鍵盤(pán)事件進(jìn)行處理,容器類必須實(shí)現(xiàn)接口KeyListener.該接口定義了3個(gè)方法KeyPressed(KeyEvebt e)、KeyReleased(Key-Event e)、KeyTyped(KeyEvent e)。其中,當(dāng)按下一個(gè)鍵時(shí),調(diào)用KeyTyped方法;釋放一個(gè)鍵時(shí),調(diào)用KeyReleased方法;如果一個(gè)字符鍵被按下,那么會(huì)調(diào)用KeyTyped方法。因此,當(dāng)按下一個(gè)鍵時(shí),通常會(huì)產(chǎn)生兩到三個(gè)事件。實(shí)驗(yàn)KeyType方法,以顯示用戶輸入的字符。 (1)創(chuàng)建一個(gè)名為KeyEventDemo的java文件。 (2)在該文件中創(chuàng)建KeyEventDemo類,該類繼承了JFrame,并實(shí)現(xiàn)KeyListener接口。 (3)在KeyEventDemo類中實(shí)現(xiàn)在KeyPressed、KeyReleased和KeyType方法。 (4)在KeyEventDemo類中添加String類型變量。該變量用于保存用戶輸入的字符。 (5)在KeyType方法中調(diào)用KeyEvent的getKeyChar()方法,獲取用戶輸入的字符,并保存到String類型變量中。最后調(diào)用repaint方法更新顯示用戶輸入的字符串。 (6)為KeyEventDemo類添加paint方法,此方法負(fù)責(zé)顯示用戶輸入的字符。 (7)用戶也可以在KeyPressed和KeyReleased方法中間調(diào)用getKeyCode方法,以獲取特殊的按鍵。比如方向鍵和退格鍵。

成都創(chuàng)新互聯(lián)是一家專注于網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站建設(shè)與策劃設(shè)計(jì),勃利網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:勃利等地區(qū)。勃利做網(wǎng)站價(jià)格咨詢:18982081108

求一個(gè)java小程序?qū)崿F(xiàn)鍵盤(pán)按鍵移動(dòng),急急!!

import java.awt.event.KeyEvent;

import java.awt.event.KeyListener;

import javax.swing.JFrame;

import javax.swing.JLabel;

public class Test extends JFrame implements KeyListener {

private static final long serialVersionUID = 1L;

private JLabel jl = new JLabel("java程序設(shè)計(jì)");

private static final int STEP = 10;//設(shè)置移動(dòng)的幅度

public static void main(String[] args) {

new Test().launchFrame();

}

public void launchFrame() {

this.add(jl);

this.addKeyListener(this);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setBounds(300,200,600,400);

this.setVisible(true);

}

public void keyPressed(KeyEvent e) {//按一個(gè)鍵,可以連續(xù)按

key(e);

}

public void keyReleased(KeyEvent e) {//按下放開(kāi)一個(gè)鍵

}

public void keyTyped(KeyEvent e) {//擊一下鍵

}

public void key(KeyEvent e) {//可以將這個(gè)函數(shù)添加到上面的三個(gè)方法里

switch(e.getKeyCode()) {

case KeyEvent.VK_LEFT ://左箭頭

jl.setLocation(jl.getLocation().x - STEP, jl.getLocation().y);

break;

case KeyEvent.VK_RIGHT ://右箭頭

jl.setLocation(jl.getLocation().x + STEP, jl.getLocation().y);

break;

case KeyEvent.VK_UP ://上箭頭

jl.setLocation(jl.getLocation().x, jl.getLocation().y - STEP);

break;

case KeyEvent.VK_DOWN ://下箭頭

jl.setLocation(jl.getLocation().x, jl.getLocation().y + STEP);

break;

}

}

}

另外提醒一下樓上的,應(yīng)該給JFrame添加KeyListener

Java給按鈕添加事件

贊一個(gè), 提前學(xué)習(xí), 做好預(yù)先 , 是個(gè)好習(xí)慣.

java圖形界面主要有AWT, SWING, SWT, JavaFx等技術(shù)

JButton ?(按鈕)是SWING里面很常用的組件. 直接添加按鈕到窗口,并不會(huì)產(chǎn)生任何交互效果.

要想產(chǎn)生交互效果,就需要了解awt,swing的事件處理機(jī)制:

事件:用戶對(duì)組件的一個(gè)操作,稱之為一個(gè)事件;

事件源:發(fā)生事件的組件就是事件源;

事件處理器:負(fù)責(zé)處理事件的方法;

比如 點(diǎn)擊按鈕,彈出HelloWord,

那么 事件是 點(diǎn)擊按鈕 ,事件源就是按鈕,事件處理器就會(huì)彈出對(duì)話框,顯示HelloWord.

常用的事件(Event) 有:

鼠標(biāo)事件(MouseEvent:?鼠標(biāo)按下,移入,移除,滾輪..)

鍵盤(pán)事件(KeyEvent:?鍵盤(pán)按下,釋放..)

動(dòng)作事件(?ActionEvent:當(dāng)按鈕、菜單項(xiàng)被點(diǎn)擊,在JTextField中按Enter鍵時(shí)...觸發(fā)該事件。)

按鈕添加接收器, 不同的事件,接收器不同.

比如ActionEvent 那么他的接收器是ActionListener

KeyEvent 那么他的接收器就是KeyListener

基礎(chǔ)知識(shí),大概就是這些.

所以想要JButton產(chǎn)生交互,你就需要給他添加事件處理器,當(dāng)發(fā)生這些事件時(shí),出發(fā)該處理器,進(jìn)行處理.

寫(xiě)2個(gè)例子,第一個(gè)簡(jiǎn)單的:點(diǎn)擊按鈕,彈出Hello World

//導(dǎo)入3個(gè)圖形界面,常用的包

import?java.awt.*;

import?java.awt.event.*;

import?javax.swing.*;

public?class?ButtonDemo?extends?JFrame?{

public?ButtonDemo()?{

JButton?jbHello?=?new?JButton("Hello");//按鈕

jbHello.addActionListener(new?ActionListener()?{//給按鈕添加事件接收器

@Override

public?void?actionPerformed(ActionEvent?e)?{//接受到事件后,進(jìn)行下面的處理

System.out.println("Hello?World");//?控制臺(tái)打印輸出

JOptionPane.showMessageDialog(null,?"Hello?World");//?彈出對(duì)話框,顯示Hello?World

}

});

add(jbHello);//把按鈕添加到窗體

//?窗體屬性的設(shè)置

setLayout(new?FlowLayout());//?窗體流式布局,?按添加順序從左到右排列組件

setSize(300,?200);//?寬300像素,高200

setLocationRelativeTo(null);//?窗體放在顯示器中間

setTitle("HelloWord");//?窗體的標(biāo)題

setDefaultCloseOperation(EXIT_ON_CLOSE);//?點(diǎn)擊窗體右上角的關(guān)閉按鈕時(shí),結(jié)束程序

setVisible(true);//?窗體可見(jiàn)

}

public?static?void?main(String[]?args)?{

new?ButtonDemo();

}

}

看明白了吧, addActionListener是關(guān)鍵

進(jìn)階版 :加法計(jì)算器.? 代碼稍微長(zhǎng)一點(diǎn),.但注釋很多

參考代碼如下

import?java.awt.*;

import?java.awt.event.*;

import?javax.swing.*;

//AddFrame繼承自JFrame類,?并且實(shí)現(xiàn)了ActionListener?接口

public?class?AddFrame?extends?JFrame?implements?ActionListener?{

//?組件

JTextField?jtf1,?jtf2,?jtf3;//?文本框,用于:顯示數(shù)字

JButton?jbAdd;//?按鈕,用于:當(dāng)點(diǎn)擊按鈕時(shí),計(jì)算出加法的結(jié)果

JButton?jbClear;//?按鈕,?用于,清空數(shù)字

public?AddFrame()?{//?構(gòu)造方法

//?初始化組件

jtf1?=?new?JTextField(5);//?長(zhǎng)度為5的文本框

JLabel?jl?=?new?JLabel("+");//文字標(biāo)簽

jtf2?=?new?JTextField(5);

jtf3?=?new?JTextField(6);

jtf3.setEditable(false);

jbAdd?=?new?JButton("=");

jbAdd.addActionListener(this);//因?yàn)楸绢愐呀?jīng)實(shí)現(xiàn)了ActionListener接口,所以添加事件的接收器就是自己(this)

jbClear?=?new?JButton("清除");

jbClear.addActionListener(this);

//把組件,添加到窗體

add(jtf1);

add(jl);

add(jtf2);

add(jbAdd);

add(jtf3);

add(jbClear);

//?窗體屬性的設(shè)置

setLayout(new?FlowLayout());//窗體流式布局,?按添加順序從左到右排列組件

setSize(380,?100);//?寬380像素,高100

setLocationRelativeTo(null);//?窗體放在顯示器中間

setTitle("加法計(jì)算器");//?窗體的標(biāo)題

setDefaultCloseOperation(EXIT_ON_CLOSE);//?點(diǎn)擊窗體右上角的關(guān)閉按鈕時(shí),結(jié)束程序

setVisible(true);//?窗體可見(jiàn)

}

/*

*??實(shí)現(xiàn)ActionListener接口?就必須重寫(xiě)actionPerformed方法

*/

@Override

public?void?actionPerformed(ActionEvent?e)?{//?當(dāng)事件產(chǎn)生后,就會(huì)執(zhí)行actionPerformed里的方法

JButton?jbTemp=?(JButton)?e.getSource();//得到事件源

if(jbTemp==jbAdd)?{//如果是從jbAdd產(chǎn)生的事件.那么執(zhí)行加法操作

//因?yàn)槭呛?jiǎn)單案例,就不判斷和處理,用戶亂輸入字母漢字等情況,導(dǎo)致的異常了

int?x?=?Integer.parseInt(jtf1.getText());//從文本框1得到字符串,并轉(zhuǎn)化成數(shù)字

int?y?=?Integer.parseInt(jtf2.getText());

jtf3.setText(x+y+"");//計(jì)算2個(gè)數(shù)的和,并顯示在文本框3上

}else?if(jbTemp==jbClear)?{//如果事件源是?jbClear,那么清除文本框的文字

jtf1.setText("");

jtf2.setText("");

jtf3.setText("");

}

}

//?main方法

public?static?void?main(String[]?args)?{

new?AddFrame();//創(chuàng)建一個(gè)AddFrame的實(shí)例

}

}

按鈕實(shí)現(xiàn)下面功能;當(dāng)鼠標(biāo)按下按鈕時(shí)顯示已按下,當(dāng)釋放時(shí)顯示已釋放 java程序

代碼我是懶得寫(xiě)!提示關(guān)鍵詞 addMouseListener

void mousePressed(MouseEvent e) 鼠標(biāo)按鍵在組件上按下時(shí)調(diào)用。

void mouseReleased(MouseEvent e) 鼠標(biāo)按鈕在組件上釋放時(shí)調(diào)用。

關(guān)于java中的事件觸發(fā)問(wèn)題: 為什么按下鍵盤(pán)并釋放的時(shí)候KeyReleased方法沒(méi)有被調(diào)用,代碼如下:

你寫(xiě)錯(cuò)事件了,是實(shí)現(xiàn)keylistener事件不是繼承那個(gè)adapter類

import java.awt.event.*;

import java.awt.*;

import javax.swing.*;

public class Test

{

JTextFieldtext1;

JTextFieldtext2;

public Test()

{

JFrame frame = new JFrame();

Container contain = frame.getContentPane();

text1 = new JTextField(10);

text2 = new JTextField(10);

MyKeyEvent e = new MyKeyEvent();

text1.addKeyListener(e);

contain.setLayout(new FlowLayout());

contain.add(text1);

contain.add(text2);

text1.setFocusable(true);

frame.pack();

frame.setVisible(true);

}

class MyKeyEvent implements KeyListener

{

@Override

public void keyTyped(KeyEvent e)

{

}

@Override

public void keyPressed(KeyEvent e)

{

}

@Override

public void keyReleased(KeyEvent e)

{

System.out.println(e.getKeyChar());

}

}

public static void main(String args[])

{

Test test = new Test();

}

}

java中怎么用程序觸發(fā)按下一個(gè)鍵呢?

KeyListener

java.awt.event

接口 KeyListener

所有超級(jí)接口:

EventListener

所有已知實(shí)現(xiàn)類:

AWTEventMulticaster, BasicComboBoxUI.KeyHandler, BasicComboPopup.InvocationKeyHandler, BasicTableUI.KeyHandler, BasicTreeUI.KeyHandler, KeyAdapter

public interface KeyListener

extends EventListener

用于接收鍵盤(pán)事件(擊鍵)的偵聽(tīng)器接口。旨在處理鍵盤(pán)事件的類要么實(shí)現(xiàn)此接口(及其包含的所有方法),要么擴(kuò)展抽象 KeyAdapter 類(僅重寫(xiě)有用的方法)。

然后使用組件的 addKeyListener 方法將從該類所創(chuàng)建的偵聽(tīng)器對(duì)象向該組件注冊(cè)。按下、釋放或鍵入鍵時(shí)生成鍵盤(pán)事件。然后調(diào)用偵聽(tīng)器對(duì)象中的相關(guān)方法并將該 KeyEvent 傳遞給它。

從以下版本開(kāi)始:

1.1

另請(qǐng)參見(jiàn):

KeyAdapter, KeyEvent, Tutorial: Writing a Key Listener

方法摘要

void keyPressed(KeyEvent e)

按下某個(gè)鍵時(shí)調(diào)用此方法。

void keyReleased(KeyEvent e)

釋放某個(gè)鍵時(shí)調(diào)用此方法。

void keyTyped(KeyEvent e)

鍵入某個(gè)鍵時(shí)調(diào)用此方法。

具體哪個(gè)鍵...

用參數(shù)KeyEvent可以判斷是按的哪個(gè)鍵


網(wǎng)頁(yè)題目:鍵盤(pán)按下釋放java代碼 java監(jiān)聽(tīng)鍵盤(pán)按鍵
瀏覽路徑:http://www.xueling.net.cn/article/hejgid.html

其他資訊

在線咨詢
服務(wù)熱線
服務(wù)熱線:028-86922220
TOP
主站蜘蛛池模板: 久久久亚洲欧洲日产国产成人无码 | 99精品在线| 亚洲性色av一区二区三区 | 啊轻点灬大ji巴太粗太长了日本 | 少妇被猛烈进入A片 | 精品无码一区二区三区亚洲桃色 | 成人免费黄视频 | 石原莉奈一区二区在线播放 | 人妻系列影片无码专区50 | 久久久久久成人毛片免费看 | 欧美国产激情 | 少妇性bbb搡bbb爽爽爽影院 | chien国产乱露脸对白 | 免费人成网站在线观看不 | 成av人在线| 巴西free性video极品 | 国产乱子伦精品免费女 | 少妇饥渴偷公乱第一章全文 | 精品无码人妻一区二区免费蜜桃 | 欧美老肥妇做爰bbww | 日本女人一区二区 | 久热草在线观看 | 超碰CAO草棚GAO进入 | AV换脸明星一区二区三区 | 久久久看片 | 欧美色呦呦 | 精品久久久免费 | 邻居丰满的奶水在线hd | 国产a∨精品一区二区三区仙踪林 | 最新版天堂资源中文官网 | 中文字幕精品在线观看 | 美女mm131爽爽爽作爱视频 | 国产V精品V欧美V日韩V | 欧美国产麻豆 | 少妇被粗大的猛烈进出va视频 | 亚洲一区二区观看 | mimiai最新网站入口 | 日韩午夜福利 | 孕交VIDEOSGRATIS孕妇性欧美 | 福利精品在线观看 | 成人无高清96免费 |