Swing/AWT/SWT :: ActionListeners In A Different Class From GUI?
Jul 15, 2014
I have 3 classes:
1 class which creates an instance of my GUI class class and initializes it which works fine.
1 class with all GUI stuff and another class which I'm trying to add all my actionsListeners to (which I can't seem to figure out).
Here is my GUI class:
public class GUI extends JFrame{
Container container;
CardLayout cl;
public GUI(){
super("Game Finder");
[Code] .....
Using my new class "AllActionListeners" I want it to have the bulk of the actionListener code, in order to make the program more manageable. However, after looking around I don't seem to be any closer to a solution. How to move the action listeners to a different class?
View Replies
ADVERTISEMENT
Mar 11, 2009
I have an application that reads through a ResultSet... while I'm reading that ResultSet, I am creating new JButtons..... Now I need to add an ActionListener to those JButtons...... but they are not visible to the actionPerformed method. So I thought I'd try to add an ActionListener as I created the buttons with the following code:
final File file = new File(rs.getString(3));
SKPictureButton spb = new SKPictureButton(url,file.getName());
spb.addActionListener (
new ActionListener() {
public void actionPerformed( ActionEvent e )
[Code] ....
However this seems a bit excessive to me..... I don't think I really want to be creating a new ActionListener class for each JButton do I ? Is there a better way to make the JButtons created in this method visible to the actionPerformed method ? I'm just gettin' back into the "Swing" of things in Java.... haven't coded it for a while.
View Replies
View Related
Apr 27, 2014
I'm trying to learn how to use ActionListeners. I want a button to hold a int and everytime it's pressed, the int gets + 2. Basically the button is a product and everytime it's pressed, you buy it, the int is your total, at least for that button. I want to have several buttons, each a different price, so maybe button 2 is +3 everytime. At the end then I want to add all the ints together for a total cost and then write that to a file. The only thing is I'm having trouble.
Here's my code
import javax.swing.*;
import java.awt.*;
public class Shop
{
public static void main(String [] args)
{
Frame frame = new Frame();
Button button = new Button(frame.getPanel());
[code]...
The problem is in my Button class, I think it's because my actionPerformed is set to void, but when I change it to int, it says my class must be abstract. For the moment I only have the info going to a label, this is just for testing. Whenever I run it, it says Juice is set to 0, probably because like I said earlier, it's set to void.
View Replies
View Related
May 6, 2014
How can I access to a jLabel of a class from another class or edit its text?
View Replies
View Related
Jun 26, 2014
I have two different classes called Login (in the package View) and RegButtonListener (in the package Controller). I want to use the MVC pattern.
Login creates a GUI for login. I used NetBeans GUI Builder to create it.
In the class RegButtonListener there is the code for the click of the buttons, then various listeners of the GUI.
Now I want to close the login frame at the click of a button so I want to use the dispose() method.
If I had all the code (GUI code and code of the listener) in the same file, close the frame would be easy enough to do because this.dispose(). But in my case I have two different classes.
I also have a second problem.
In Login class (in the packege View) I have included the line :
regButton.addActionListener(Controller.RegButtonListener).
However, Netbeans tells me an error "package regButton does not exist. <identifier> expected". Why does he consider regButton a package? How can I fix these two problems?
How do I do then?
Below is the code of the two classes.
Login class.
public class Login extends javax.swing.JFrame {
/** Creates new form Login */
public Login() {
initComponents();
[code]....
View Replies
View Related
May 19, 2014
This program should create a GUI that has 5 classes together on a grid layout. The problem that I am having is that the user input class has the input for kwh, hours, and gallons. I am having problems getting that information from the user input class to the totals class.
user input class:
package applianceutilitycalculator;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Scanner;
import javax.swing.*;
[code].....
The totals class should take the info from the kwh hours and gallons and do the math to get a total and display it in a JTextField(?).
View Replies
View Related
Feb 26, 2015
Add two radio buttons so that the user can select the gender (male or female). Also extend your Account class so that it contains the gender information as well. When the user presses “Submit”, your program should read the entered data and create an Account object that captures all the data in your interface. This is my code, what would I need to add in order to make a RadioButton?
/**
* Orchestration class for Account
*/
public class AccountDemo {
public static int numOfAccount = 3;
public static void main(String [] args) {
Account Accountholder1,Accountholder2,Accountholder3;
[Code] ....
View Replies
View Related
Jul 16, 2014
I have one question that suppose I am designing a Swing applications and I am using JFrame as Top level container.
So what is best
1)first Extends that class like
public class A Extends JFrame
{
//Do all stuff with Top Level container with gui
}
2)Or design like this from this source
[URL] ....
package components;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
/* TopLevelDemo.java requires no other files. */
public class TopLevelDemo {
/**
* Create the GUI and show it. For thread safety, this method should be invoked from the event-dispatching thread.
*/
private static void createAndShowGUI() {
//Create and set up the window.
[Code] .....
View Replies
View Related
Apr 19, 2014
I have a jFrame and a Java Class. Now i have a path of image in my jFrame which I want to display in java class(Crop2). I created an object in jFrame
Crop2 d=new Crop2();
and then I'm trying to send the data to the class file but it is not working.
View Replies
View Related
Aug 2, 2014
Class 1 open main frame
Class2 add panel for main frame
Class3 append text to Jtextarea (of panel class2)
View Replies
View Related
Sep 26, 2014
I have this panel in a nested class in the MainPanel class and it does not display, when I launch the applet, or more like, the two menus "LineColor" and "BackColor" from the nested class ColorPanel do not display .
This is the code:
package ui.panels;
import interfaces.Resettable;
import java.awt.Color;
import java.awt.Component;
import java.awt.GridLayout;
import java.awt.Panel;
[code].....
View Replies
View Related
Aug 4, 2014
I am getting datas from user and checking it with database (MS SQL ) if it fits it is sweatching to new window. In new window I need to use again my database so I need to add connecting datas again. I would like to get them from login window. How to do that? I know theory but when I am writting code nothing works. Here is working code for login panel :
/*import java.awt.BorderLayout;
import javax.swing.*;
public class Login extends JFrame {
public String url;
public static void main(String[] args) {
Log frameTabel = new Log();
[Code] .....
View Replies
View Related
Apr 29, 2014
Is it good practice to create a inner class for layered panels with lots of components? In my opinion this makes the code easier to read and a lot less clustered.
View Replies
View Related
May 26, 2014
Create a dnd (dungeons and dragons) character creator and back ground generator, have it display and run on a gui, to start with i decided to creator the gui as i go so i can see the progress, first i tried eclipse and windows builder, well after 1 day of reinstalling windows builder in about 5 different ways from multiple guides and sometimes getting it to partly work ...
After doing some more research I have figured out how to get the main program to display the gui . Heres what i have:
package com.mrgreaper;
import javax.swing.*;
public class MainWindow {
private JPanel mainWindow;
private JLabel playerlbl;
private JLabel playerNamelbl;
[Code] .....
Now this works fine and the gui displays when the program is run but I can't change the text of any of the jlabels or textfield. If I try to do it in the main class i need to change them from private to public static but then in the form builder it says "cannot bind to static field *name of field*" but if i take static off then i cant change its value!
From what i understand this is because the window is an instance, so how to i change the value in that instance? I could put all my code in the one class, the one that creates the gui, but i really want it seperate, i would like the gui to update as the code runs... So how do i do it, how do i change the contents of jlabels on the fly, read the contents of text boxes on the fly etc....
I tried adding a getter setter
public void setCharFirst(JLabel charFirst) {
this.charFirst = charFirst;
}
in the MainWindow.class
Then i tried to set it from my main function
MainWindow.setCharFirst("test");
but it cant access it as my main function is static and it is not now can i make it static...
View Replies
View Related
Mar 10, 2014
how can i execute the main class into a JButton.
Example: Main Class
public class ComparativoV3{
public void loadComparative(String path){
}
public void compareDbs(){
[Code].....
how to set it up the private void CompareActionPerformed(java.awt.event.ActionEvent evt) as the ComparativeV3 main class, not giving it any argument, because the files are load from the arguments section & it reads diferent files with diferent arguments.
View Replies
View Related
Jan 23, 2015
I'm trying to fill my jtable with an arraylist. The problem is the jtable is in an extended class and the arraylist in the mainGUI. Now how can I fill the jtable with the arraylist?
That's the arraylist in my MainGUI
BufferedReader in = null;
ArrayList<String> data = new ArrayList<String>();
try {
in = new BufferedReader(new FileReader("1.dat.txt"));
String str;
while ((str = in.readLine()) != null) {
data.add(str);
[Code] ....
View Replies
View Related
Jun 2, 2014
JMenuItem blueChoice = new JMenuItem("Blue");
blueChoice.addActionListener(new InnerMenuListener(){
public void actionPerformed(ActionEvent e){
String buttonCommandString = e.getActionCommand( );
if (buttonCommandString.equals("Red"))
redPanel.setBackground(Color.RED);
else if (buttonCommandString.equals("White"))
whitePanel.setBackground(Color.WHITE);
else if (buttonCommandString.equals("Blue"))
bluePanel.setBackground(Color.BLUE);
else
System.out.println("Unexpected error.");
}
});
Can a method in an anonymous inner class ever be private? why or why not?
View Replies
View Related
Sep 28, 2014
I am trying to make a JTree. I have used this guide :[URL]
Now when I call my Class with
TreeMainMenu tree = new TreeMainMenu();
JScrollPane MainMenu = new JScrollPane(tree);
I get only the default JTree..
I need to understand how I should build my code to call the class as JTree.
This is my code:
public class TreeMainMenu extends JTree {
private DefaultMutableTreeNode top = new DefaultMutableTreeNode("TOP");
JTree tree;
public JTree TreeMainMenu() {
APNode();
tree = new JTree(top);
tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
return tree;
[code]....
View Replies
View Related
Apr 8, 2015
I'm building a text editor. At this point, the editor should be able to read and write text and rich text. I create an instance of a RichTextEditor class that I created that extends a superclass I created (that extends JTextPane). Both my rich text and plain text classes extends the superclass I created. I use the this.read() to input my plain text from buffered reader. I think I need to use the read(fileinput stream, rtf document) method from type RTFEditorKit, but I cannot use that because it does not extend RTFEditorKit. I don't want to create a new class that extends RTFEditorKit because I need stuff from the JTextPane.
here are the classes on git... the super: TextEditorPane.java
The plaintext: TextEditorWrap.java
and the rich: RichTextEditor.java
I have fiddled with the read() method in different ways. In all cases, nothing loads. If I use the BufferedReader method, it doesn't give me an RTF, just the code for the RTF file.
How should I proceed? Do I create some sort of RTF interface and implement it?
View Replies
View Related
Jul 10, 2014
I have defined a subclass of DefaultMutableTreeNode Class in java :
public AccountsTreeNode extends DefaultMutableTreeNode {
}
in this class I have a recursive method called getsorted(ArrayList list_) , which accummulated the list_.
In this method, I have to call this.children() which returns the children of the node, but the children are all of type "DefaultMutableTreeNode". I have to call the method getsorted on these children,but since the getsorted is a mehtod of AccontsTreeNode, it gives me runtime cast error.
Should I convert children to AccountTreeNode type by overriding the children() method?
View Replies
View Related
Apr 15, 2015
I have my paint application, i use the following mouse event to draw my shapes (mousePressed, mouseReleased, mouseDragged). Now after the user paint a circle for example, he must be able to drag the shape; to be able to do this. i think i must again implement the different mouse Events. I have done it and the drag is not working. How can i achieve this. can we implement multiple (mousePressed, mouseReleased, mouseDragged) in the same java class??
View Replies
View Related
Mar 15, 2014
I am working on a project where i need to show a year value in a class that extends JSpinner.Its working just fine but when i try to set an alignment value for the editor textfield it all falls apart and i know im missing something really critical here but i can't see or find it all i know is that i can't make a proper reference to the textfield component in the editor i use in the correct way or aproach.
public class JNumberSpinner extends JSpinner {
private String actionCommand;
private boolean isEnabled;
private int startValue;
private int columns;
private int alignment;
private SpinnerNumberModel model;
private JSpinner.NumberEditor numEditor;
private JFormattedTextField jTxtEditorView;
[code]....
View Replies
View Related
Aug 9, 2014
this code won't compile because selected row must be declared as final because of it being defined outside the window listener. Is their anyway around this? If I make it final the first time that the variable is called it keeps it starting value until the GUI is closed.
butEdit.addActionListener (new ActionListener () {
@Override
public void actionPerformed (java.awt.event.ActionEvent evt) {
int selectedRow = table.getSelectedRow ();
final String [] values = custTableModel.getRowValues (selectedRow);
[code]....
View Replies
View Related
Dec 4, 2014
I have a swing jFrame set up with a control group which contains 3 radio buttons.
When one is clicked it sends its label to a jtextfield in a different class i have code parsing text by a term
Java Code:
Scanner s = null;
try {
s = new Scanner(new BufferedReader(new FileReader("/Stage_One.txt")));
s.useDelimiter("*");
String total = (s.next());
Pattern p = Pattern.compile("[]+");
[Code] ....
I just need to know how to access the jframe variables (textfields, panels and such) so i can use their inputs in code to filter a text file.
View Replies
View Related
Sep 19, 2014
I am trying to create a GUI interface in swing which consists of four classes: a GUI class, which creates a main JPanel, a label, and a JList, which it takes from the second class, a MovesList class that contains a JList and the stuff needed to interface with it. It also has a main class, which basically just creates an object of the GUI class for the main window, and an Other class from which I would like to be able to add an item to the JList. I created methods in the MovesList class to get each component (like getMoveslist, or getMovesListScrollPane), which I then used to create the JList in the GUI class. I also created an addMove method so that I can add an item to the JList from any class through a MovesList object. However, this addMove method only works when called from the GUI or MovesList classes -- it does nothing when I collect from the Other class.
Here is my code:
//Main class
public class TestProject {
public static void main(String[] args) {
GUI mainWindow = new GUI();
mainWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
[Code] ....
When I run this code, I get a window with a JLabel that says "Moves," and a JList that contains five elements -- test 1-test 5, but not a sixth "test from other class." ( using the add move method ) However, when I click on the window, the addMove method is also called, and successfully adds "test 6" to the list.
View Replies
View Related
Dec 30, 2014
I have two classes involved in this portion. CheckIn_Search
(class #1) is my main UI and I am collecting search information from the user in a jPanel form. When they click "Search" it passes the search criteria to a method that contacts a web service and gets the results. These results are passed to coSearchResults
(class #2) that opens a jFrame and jTable (in modal format, over the main window created by CheckIn_Search.
The user selects a row in the table and that selection data is passed back to coSearchResults to populate a new jPanel form. When the data is passed from coSearchResults, I want to close its window, hide the first jPanel in CheckIn_Search and make the second jPanel visible. To accomplish this, I created a method in CheckIn_Search that simply hides/shows the panels (it will do more later).
I instantiate and call the method in CoSearchResults as part of the button click event. The problem is, it doesn't work. The panels are unaffected and there are no errors. I've put in break-points and it goes into the method.. Here is the coSearch_Results code.
Here is am retrieving the jtable row id and using the first value in the row to get the data from the table model as there is more data than what is displayed in the table. I'm sending that whole row of data to the method that changes visibility.
private void btnOKActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnOKActionPerformed
// TODO add your handling code here:
int rowNum = jTable1.getSelectedRow();
String coNum = jTable1.getValueAt(rowNum,0).toString();
String[] text;
[code]....
View Replies
View Related