swing - Java GUI JButton to actionlistner -



swing - Java GUI JButton to actionlistner -

i have made gui in netbeans. it's chat programme , have 4 commandos /join, /leave, /whisper , /leave

private void commandoactionperformed(java.awt.event.actionevent evt) { joptionpane.showmessagedialog(rootpane, "the next commandos are:" + "\n" + "\n" + "/join channel name" + "\n" + "/leave channel name" + "\n" + "/whisper nick message" + "\n" + "/quit - quit program"); }

and ok, want actionlister instead of showmessagedialog can force on of them , comes in jtextfield. think can them there don't know how actionlistener combined this.

edit: want force commando button , windows have 4 new buttons, each 1 commando (/join, /leave, /whisper , /exit) when force 1 of these buttons commando in text field need write rest. if force "/join" button, need write channel name.

edit2: if pretty bad in describing problem, can show wanted , have done far:

private void showcommandactionperformed(java.awt.event.actionevent evt) { object[] options = { "/join", "/leave", "/whisper", "/quit", "ingenting" }; int choice= joptionpane.showoptiondialog(rootpane, "what u want do? ", null, width, width, null, options, rootpane); switch (choice) { case 0: skrivtekst.settext("/join "); skrivtekst.requestfocus(); break; case 1: skrivtekst.settext("/leave"); skrivtekst.requestfocus(); break; case 2: skrivtekst.settext("/whisper"); skrivtekst.requestfocus(); break; case 3: skrivtekst.settext("/join "); skrivtekst.requestfocus(); case 4: system.exit(1); //this wrong. want close window, not whole programme default: joptionpane.showmessagedialog(null, "donno what!?!?!?!?!?!?!" + choice); } }

i hope show wanted , have done. ty :) problem have left closing 1 joptionpane window , not program

1) can implements jradiobuttons in buttongroup, 1 of choices available selection, there can implelements actionlistener, , within actionlistener settext() jtextfield

2) please utilize standard swing jcomponents rather prepared components palette, hard override basic swing methods

simple illustration based on illustration jradiobutton's tutorial

import java.awt.borderlayout; import java.awt.dimension; import java.awt.gridlayout; import java.awt.event.actionevent; import java.awt.event.actionlistener; import java.awt.event.keyevent; import javax.swing.borderfactory; import javax.swing.buttongroup; import javax.swing.imageicon; import javax.swing.jcomponent; import javax.swing.jframe; import javax.swing.jlabel; import javax.swing.jpanel; import javax.swing.jradiobutton; /* * radiobuttondemo.java 1.4 application requires these files: * images/bird.gif images/cat.gif images/dog.gif images/rabbit.gif * images/pig.gif */ public class radiobuttondemo extends jpanel implements actionlistener { private static string birdstring = "bird"; private static string catstring = "cat"; private static string dogstring = "dog"; private static string rabbitstring = "rabbit"; private static string pigstring = "pig"; private static final long serialversionuid = 1l; private jlabel picture; public radiobuttondemo() { super(new borderlayout()); //create radio buttons. jradiobutton birdbutton = new jradiobutton(birdstring); birdbutton.setmnemonic(keyevent.vk_b); birdbutton.setactioncommand(birdstring); birdbutton.setselected(true); jradiobutton catbutton = new jradiobutton(catstring); catbutton.setmnemonic(keyevent.vk_c); catbutton.setactioncommand(catstring); jradiobutton dogbutton = new jradiobutton(dogstring); dogbutton.setmnemonic(keyevent.vk_d); dogbutton.setactioncommand(dogstring); jradiobutton rabbitbutton = new jradiobutton(rabbitstring); rabbitbutton.setmnemonic(keyevent.vk_r); rabbitbutton.setactioncommand(rabbitstring); jradiobutton pigbutton = new jradiobutton(pigstring); pigbutton.setmnemonic(keyevent.vk_p); pigbutton.setactioncommand(pigstring); //group radio buttons. buttongroup grouping = new buttongroup(); group.add(birdbutton); group.add(catbutton); group.add(dogbutton); group.add(rabbitbutton); group.add(pigbutton); //register listener radio buttons. birdbutton.addactionlistener(this); catbutton.addactionlistener(this); dogbutton.addactionlistener(this); rabbitbutton.addactionlistener(this); pigbutton.addactionlistener(this); //set image label. image = new jlabel("narrative"); //the preferred size hard-coded width of //widest image , height of tallest image. //a real programme compute this. //picture.setpreferredsize(new dimension(177, 122)); //put radio buttons in column in panel. jpanel radiopanel = new jpanel(new gridlayout(0, 1)); radiopanel.add(birdbutton); radiopanel.add(catbutton); radiopanel.add(dogbutton); radiopanel.add(rabbitbutton); radiopanel.add(pigbutton); add(radiopanel, borderlayout.line_start); pigbutton.setvisible(false); rabbitbutton.setvisible(false); add(picture, borderlayout.center); setborder(borderfactory.createemptyborder(20, 20, 20, 20)); } /** listens radio buttons. * @param e */ public void actionperformed(actionevent e) { string narr = e.getactioncommand(); picture.settext(narr); } /** returns imageicon, or null if path invalid. * @param path * @return */ protected static imageicon createimageicon(string path) { java.net.url imgurl = radiobuttondemo.class.getresource(path); if (imgurl != null) { homecoming new imageicon(imgurl); } else { system.err.println("couldn't find file: " + path); homecoming null; } } /** * create gui , show it. thread safety, method should * invoked event-dispatching thread. */ private static void createandshowgui() { //make sure have nice window decorations. jframe.setdefaultlookandfeeldecorated(true); //create , set window. jframe frame = new jframe("radiobuttondemo"); frame.setdefaultcloseoperation(jframe.exit_on_close); //create , set content pane. jcomponent newcontentpane = new radiobuttondemo(); newcontentpane.setopaque(true); //content panes must opaque frame.setcontentpane(newcontentpane); //display window. frame.pack(); frame.setvisible(true); } public static void main(string[] args) { //schedule job event-dispatching thread: //creating , showing application's gui. javax.swing.swingutilities.invokelater(new runnable() { public void run() { createandshowgui(); } }); } }

java swing actionlistener jtextfield joptionpane

Comments

Popular posts from this blog

How do I check if an insert was successful with MySQLdb in Python? -

delphi - blogger via idHTTP : error 400 bad request -

postgresql - ERROR: operator is not unique: unknown + unknown -