JMenu & ImageIcon, Please Help me !!
There is a jframe with a jmenubar.
there is a jmenu in that jmenubar.
I have created a imageicon from an image.
I have written.
JMenu.setIcon (new ImageIcon (String fileName));
But this icon isn't covering the whole menu. When i click on menu then some back screen visible near its boundary..
I want to fix this icon over full jmenu.
how can i do so.. pls help me .. it is very urgent...
NOOOOOOOOOOOOOOOOOOOOOOOOOO..
It is not working.... sir........
I am frustrated with this........
i have written........
* AAA.java
* Created on April 15, 2003, 1:53 PM
* @author Administrator
public class AAA extends javax.swing.JFrame
/** Creates new form AAA */
public AAA ()
initComponents ();
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
private void initComponents()
jMenuBar1 = new javax.swing.JMenuBar();
jMenu1 = new javax.swing.JMenu();
addWindowListener(new java.awt.event.WindowAdapter()
public void windowClosing(java.awt.event.WindowEvent evt)
exitForm(evt);
jMenu1.setBorder(null);
jMenu1.setIcon(new javax.swing.ImageIcon("C:\\Documents and Settings\\Administrator\\Desktop\\accept.gif"));
jMenu1.setMargin(new java.awt.Insets(0, 0, 0, 0));
jMenuBar1.add(jMenu1);
setJMenuBar(jMenuBar1);
pack();
java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
setSize(new java.awt.Dimension(400, 300));
setLocation((screenSize.width-400)/2,(screenSize.height-300)/2);
/** Exit the Application */
private void exitForm (java.awt.event.WindowEvent evt)
System.exit (0);
* @param args the command line arguments
public static void main (String args[])
new AAA ().show ();
// Variables declaration - do not modify
private javax.swing.JMenu jMenu1;
private javax.swing.JMenuBar jMenuBar1;
// End of variables declaration
BUT it doesn't work.. still the icon is not covering the full jMenu... we i click on JMenu .. the boundry is seen with different color.
It looks so bad.. Pls tell me how to do it....
However thanks for it..
waiting..
"anjeev Dhiman"
Similar Messages
-
Scroll bar problems ..Please help!!!!!!
This is what the program looks like. topPanel has newItemPanel on top of it. when you click continue newItemPanel becomes invisible and newItemDescriptionPanel becomes visible. When you click continue newItemDescriptionPanel becomes invisible and priceEnterPanel becomes visible.
I want newItemDescriptionPanel and priceEnterPanel to have a scroll bar. but everything I have tried hasn't worked. I am new. You will see the code is ugly and there is an attempt to add a scrollbar.
Please help
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.border.*;
import java.lang.System;
public class MainPanel extends JFrame implements ActionListener
private boolean firstRun = true;
private final int ITEM_PLAIN = 0; // Item types
private final int ITEM_CHECK = 1;
private final int ITEM_RADIO = 2;
private JPanel topPanel;
private JPanel newItemPanel;
private JRadioButton onlineAuctionRadio;
private JRadioButton fixedPriceRadio;
private ButtonGroup bg;
private JButton continueButton;
private JLabel blankLabel; //used to give space between things
private JPanel newItemDescriptionPanel;
private JPanel takeAdditionalSpacePanelCheckBox;
private JPanel takeAdditionalSpacePanel;
private JPanel takeAdditionalSpacePanelLabel;
private JPanel takeAdditionalSpacePanelLabel2;
private JPanel takeAdditionalSpacePanel2;
private JPanel takeAdditionalSpacePanel3;
private JPanel takeAdditionalSpacePanel4;
private JPanel takeAdditionalSpacePanel5;
JScrollPane displayScroller;
JEditorPane itemDescriptionTextArea;
GridBagLayout gridbag;
GridBagConstraints gbc;
private JCheckBox secondCategoryCheckBox;
private JLabel itemTitleLabel;
private JLabel requiredLabel, requiredLabel2;
private JLabel requiredStarLabel;
private JTextField itemTitleTextField;
private JLabel subtitleLabel;
private JTextField subtitleTextField;
private JLabel itemDescriptionLabel;
private JButton itemDescriptionContinueButton;
private JLabel percentageLabel;
//------- price enter page ----------------
private JLabel startingPriceLabel;
private JLabel dollarSignLabel;
private JTextField startingPriceTextField;
private JPanel fillUpSpacePanel;
private JPanel fillUpSpacePanel1;
private JPanel fillUpSpacePanel2;
private JLabel buyItNowLabel;
private JPanel fillUpSpacePanel3;
private JLabel dollarSignLabel2;
private JTextField buyItNowTextField;
private JPanel fillUpSpacePanel4;
private JPanel fillUpSpacePanel5;
private JPanel fillUpSpacePanel6;
private JPanel fillUpSpacePanel7;
private JPanel fillUpSpacePanel8;
private JPanel fillUpSpacePanel9;
private JPanel fillUpSpacePanel10;
private JPanel fillUpSpacePanel11;
private JPanel fillUpSpacePanel12;
private JPanel fillUpSpacePanel13;
private JPanel fillUpSpacePanel14;
private JPanel fillUpSpacePanel15;
private JPanel fillUpSpacePanel16;
private JPanel fillUpSpacePanel17;
private JPanel fillUpSpacePanel18;
private JLabel donatePercentageLabel;
private JTextField donatePercentageTextField;
private JPanel fSp; // fill space panel
private JPanel fSp1;
private JPanel fSp2;
private JPanel fSp3;
private JPanel fSp4;
private JPanel fSp5;
private JPanel fSp6;
private JPanel fSp7;
private JPanel fSp8;
private JPanel fSp9;
private JLabel numberOfPicturesLabel;
private JTextField numberOfPicturesTextField;
private JCheckBox superSizePicturesCheckBox;
private JLabel superSizePicturesLabel;
private JRadioButton standardPictureRadioButton;
private JRadioButton picturePackRadioButton;
private JCheckBox listingDesignerCheckBox;
private ButtonGroup bgPictures;
private JCheckBox valuePackCheckBox;
private JCheckBox galleryPictureCheckBox;
private JCheckBox subtitleCheckBox;
private JCheckBox boldCheckBox;
private JCheckBox borderCheckBox;
private JCheckBox highlightCheckBox;
private JCheckBox featuredPlusCheckBox;
private JCheckBox galleryFeaturedCheckBox;
private JLabel homePageFeaturedLabel;
private JComboBox homePageFeaturedComboBox;
private JCheckBox giftCheckBox;
JScrollPane priceEnterPanelScroll;
private JButton backToRadioButton;
private JButton backToItemDescriptionButton;
private JPanel priceEnterPanel;
private final static String RADIOPANEL = "JPanel with radios";
private final static String DESCRIPTIONPANEL = "JPanel with description";
private final static String PRICEENTERPANEL = "JPanel with price entering";
private JPanel cards;
private JMenuBar menuBar;
private JMenu menuFile;
private JMenu menuEdit;
private JMenu menuProperty;
private JMenuItem menuPropertySystem;
private JMenuItem menuPropertyEditor;
private JMenuItem menuPropertyDisplay;
private JMenu menuFileNew;
private JMenuItem menuFileNewAccount;
private JMenuItem menuFileNewItem;
private JMenuItem menuFileOpen;
private JMenuItem menuFileSave;
private JMenuItem menuFileSaveAs;
private JMenuItem menuFileExit;
private JMenuItem menuEditCopy;
private JMenuItem menuEditCut;
private JMenuItem menuEditPaste;
public MainPanel()
requiredLabel = new JLabel ("* Required");
requiredLabel.setForeground (Color.red);
requiredLabel2 = new JLabel ("* Required");
requiredLabel2.setForeground (Color.red);
requiredStarLabel = new JLabel ("*");
requiredStarLabel.setForeground (Color.green);
setTitle( "photo galleries" );
setSize( 310, 130 );
topPanel = new JPanel();
topPanel.setLayout( new BorderLayout() );
topPanel.setBorder (BorderFactory.createTitledBorder ("TopPanel"));
//topPanel.setPreferredSize(new Dimension (300,300));
getContentPane().add( topPanel );
topPanel.setVisible (false);
// For New Item Panel
ButtonListener ears = new ButtonListener();
blankLabel = new JLabel (" "); // used to give space between radio buttons and continue button
continueButton = new JButton ("Continue >");
continueButton.addActionListener (ears);
backToRadioButton = new JButton ("< back");
backToRadioButton.addActionListener (ears);
itemDescriptionContinueButton = new JButton ("Continue >");
itemDescriptionContinueButton.addActionListener (ears);
backToItemDescriptionButton = new JButton ("< back");
backToItemDescriptionButton.addActionListener (ears);
newItemPanel = new JPanel();
newItemPanel.setLayout (new BoxLayout(newItemPanel, BoxLayout.Y_AXIS));
//topPanel.add (newItemPanel, BorderLayout.NORTH);
newItemPanel.setBorder (BorderFactory.createTitledBorder ("NewItemPanel"));
newItemPanel.setVisible (false);
onlineAuctionRadio = new JRadioButton ("Sold item at online Auction" );
fixedPriceRadio = new JRadioButton ("Sold at a Fixed Price");
bg = new ButtonGroup();
bg.add(onlineAuctionRadio);
bg.add(fixedPriceRadio);
onlineAuctionRadio.addActionListener (ears);
fixedPriceRadio.addActionListener (ears);
newItemPanel.add (onlineAuctionRadio);
newItemPanel.add (fixedPriceRadio);
newItemPanel.add (blankLabel);
newItemPanel.add (continueButton);
// ------ After continue pressed ---------
newItemDescriptionPanel = new JPanel();
newItemDescriptionPanel.setLayout (new BoxLayout(newItemDescriptionPanel, BoxLayout.Y_AXIS));
newItemPanel.add (newItemDescriptionPanel, BorderLayout.NORTH);
newItemDescriptionPanel.setBorder (BorderFactory.createTitledBorder ("newItemDescriptionPanel"));
secondCategoryCheckBox = new JCheckBox ("The item was listed in a second category");
newItemDescriptionPanel.setVisible (false);
itemTitleLabel = new JLabel ("Item title");
itemTitleTextField = new JTextField (30);
subtitleLabel = new JLabel ("Subtitle ($0.50)");
subtitleTextField = new JTextField (30);
itemDescriptionLabel = new JLabel ("Item description");
itemDescriptionTextArea = new JEditorPane();
itemDescriptionTextArea.setContentType( "text/html" );
itemDescriptionTextArea.setEditable( false );
itemDescriptionTextArea.setPreferredSize(new Dimension (500,250));
itemDescriptionTextArea.setFont(new Font( "Serif", Font.PLAIN, 12 ));
itemDescriptionTextArea.setForeground( Color.black );
gbc = new GridBagConstraints();
gbc.gridx = 0;
gbc.gridy = 4;
displayScroller = new JScrollPane( itemDescriptionTextArea );
gridbag = new GridBagLayout ();
gridbag.setConstraints( displayScroller, gbc );
itemDescriptionTextArea.setEditable( true );
takeAdditionalSpacePanelCheckBox = new JPanel(new FlowLayout(FlowLayout.LEFT));
takeAdditionalSpacePanel = new JPanel(new FlowLayout(FlowLayout.LEFT));//<--added, to take additional space
takeAdditionalSpacePanelLabel = new JPanel(new FlowLayout(FlowLayout.LEFT));//<--added, to take additional space
takeAdditionalSpacePanelLabel2 = new JPanel(new FlowLayout(FlowLayout.LEFT));//<--added, to take additional space
takeAdditionalSpacePanel2 = new JPanel(new FlowLayout(FlowLayout.LEFT));//<--added, to take additional space
takeAdditionalSpacePanel3 = new JPanel(new FlowLayout(FlowLayout.LEFT));//<--added, to take additional space
takeAdditionalSpacePanel4 = new JPanel(new FlowLayout(FlowLayout.LEFT));
takeAdditionalSpacePanel5 = new JPanel(new FlowLayout(FlowLayout.LEFT));
//takeAdditionalSpacePanel2.setBorder (BorderFactory.createTitledBorder ("Additonal 2"));
takeAdditionalSpacePanelCheckBox.add (secondCategoryCheckBox);
newItemDescriptionPanel.add (takeAdditionalSpacePanelCheckBox);
//newItemDescriptionPanel.add (blankLabel);
takeAdditionalSpacePanelLabel.add (itemTitleLabel);
takeAdditionalSpacePanelLabel.add (requiredLabel);
newItemDescriptionPanel.add (takeAdditionalSpacePanelLabel);
//newItemDescriptionPanel.add (itemTitleTextField);
takeAdditionalSpacePanel.add(itemTitleTextField);//<--add textfield to panel
newItemDescriptionPanel.add (takeAdditionalSpacePanel);//<--add panel to boxlayout panel
takeAdditionalSpacePanelLabel2.add (subtitleLabel);
newItemDescriptionPanel.add (takeAdditionalSpacePanelLabel2);
takeAdditionalSpacePanel2.add (subtitleTextField);
newItemDescriptionPanel.add (takeAdditionalSpacePanel2);
takeAdditionalSpacePanel4.add (itemDescriptionLabel);
//takeAdditionalSpacePanel4.add (requiredLabel2);
newItemDescriptionPanel.add (takeAdditionalSpacePanel4);
takeAdditionalSpacePanel3.add (displayScroller);
newItemDescriptionPanel.add (takeAdditionalSpacePanel3);
takeAdditionalSpacePanel5.add (backToRadioButton);
takeAdditionalSpacePanel5.add (itemDescriptionContinueButton);
newItemDescriptionPanel.add (takeAdditionalSpacePanel5);
//newItemDescriptionPanel.setLayout (new BoxLayout(newItemDescriptionPanel, BoxLayout.Y_AXIS));
//----------- Price Enter Page ----------------
priceEnterPanel = new JPanel();
priceEnterPanel.setLayout (new BoxLayout(priceEnterPanel, BoxLayout.Y_AXIS));
newItemDescriptionPanel.add (priceEnterPanel, BorderLayout.NORTH);
priceEnterPanel.setBorder (BorderFactory.createTitledBorder ("Price enter Panel"));
priceEnterPanel.setVisible (false);
priceEnterPanelScroll = new JScrollPane (priceEnterPanel);
topPanel.add (priceEnterPanelScroll);
standardPictureRadioButton = new JRadioButton ("Standard");
picturePackRadioButton = new JRadioButton ("Picture Pack ($1.00 for up to 6 pictures or $1.50 for 7 to 12 pictures)");
bgPictures = new ButtonGroup();
bgPictures.add(standardPictureRadioButton);
bgPictures.add(picturePackRadioButton);
standardPictureRadioButton.addActionListener (ears);
picturePackRadioButton.addActionListener (ears);
superSizePicturesCheckBox = new JCheckBox ("Supersize Pictures ($0.75)");
listingDesignerCheckBox = new JCheckBox ("Listing designer $0.10");
valuePackCheckBox = new JCheckBox ("Get the Essentials for less! Gallery, Subtitle, Listing Designer. $0.65 (save $0.30)");
superSizePicturesCheckBox.setEnabled (false);
superSizePicturesCheckBox.addActionListener (ears);
listingDesignerCheckBox.addActionListener (ears);
valuePackCheckBox.addActionListener (ears);
startingPriceLabel = new JLabel ("Starting Price");
dollarSignLabel = new JLabel ("$");
startingPriceTextField = new JTextField (10);
buyItNowLabel = new JLabel ("Buy It Now");
dollarSignLabel2 = new JLabel ("$");
buyItNowTextField = new JTextField (10);
donatePercentageLabel = new JLabel ("Donate percentage of sale");
donatePercentageTextField = new JTextField (2);
donatePercentageTextField.setText ("0");
percentageLabel = new JLabel ("%");
// Right-justify the text
donatePercentageTextField.setHorizontalAlignment(JTextField.RIGHT);
numberOfPicturesLabel = new JLabel ("Number of pictures used");
numberOfPicturesTextField = new JTextField (1);
numberOfPicturesTextField.setText ("0");
galleryPictureCheckBox = new JCheckBox ("Gallery ($0.35) [Requires a picture]");
subtitleCheckBox = new JCheckBox ("Subtitle ($0.50)");
boldCheckBox = new JCheckBox ("Bold ($1.00)");
borderCheckBox = new JCheckBox ("Border ($3.00)");
highlightCheckBox = new JCheckBox ("Highlight ($5.00)");
featuredPlusCheckBox = new JCheckBox ("Featured Plus! ($19.95)");
galleryFeaturedCheckBox = new JCheckBox ("Gallery Featured ($19.95) [Requires a picture]");
homePageFeaturedLabel = new JLabel ("Home Page Featured ($39.95 for 1 item, $79.95 for 2 or more items)");
homePageFeaturedComboBox = new JComboBox ();
homePageFeaturedComboBox.addItem (("None..."));
homePageFeaturedComboBox.addItem (("1 item"));
homePageFeaturedComboBox.addItem (("2 or more items"));
giftCheckBox = new JCheckBox ("Show as a gift ($0.25)");
fillUpSpacePanel = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel1 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel2 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel3 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel4 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel5 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel6 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel7 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel8 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel9 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel10 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel11 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel12 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel13 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel14 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel15 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel16 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel17 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel18 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fSp = new JPanel(new FlowLayout(FlowLayout.LEFT));
fSp1 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fSp2 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fSp3 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fSp4 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fSp5 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fSp6 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fSp7 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fSp8 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fSp9 = new JPanel(new FlowLayout(FlowLayout.LEFT));
fillUpSpacePanel.add (startingPriceLabel);
fillUpSpacePanel.add (requiredLabel2);
priceEnterPanel.add (fillUpSpacePanel);
fillUpSpacePanel2.add (dollarSignLabel);
fillUpSpacePanel2.add (startingPriceTextField);
priceEnterPanel.add (fillUpSpacePanel2);
// fillUpSpacePanel1.add (backToItemDescriptionButton);
// priceEnterPanel.add (fillUpSpacePanel1);
fillUpSpacePanel3.add (buyItNowLabel);
priceEnterPanel.add (fillUpSpacePanel3);
fillUpSpacePanel4.add (dollarSignLabel2);
fillUpSpacePanel4.add (buyItNowTextField);
priceEnterPanel.add (fillUpSpacePanel4);
fillUpSpacePanel1.add (donatePercentageLabel);
priceEnterPanel.add (fillUpSpacePanel1);
fillUpSpacePanel5.add (donatePercentageTextField);
fillUpSpacePanel5.add (percentageLabel);
priceEnterPanel.add (fillUpSpacePanel5);
fillUpSpacePanel6.add (numberOfPicturesLabel);
priceEnterPanel.add (fillUpSpacePanel6);
fillUpSpacePanel7.add (numberOfPicturesTextField);
priceEnterPanel.add (fillUpSpacePanel7);
fillUpSpacePanel8.add (standardPictureRadioButton);
priceEnterPanel.add (fillUpSpacePanel8);
fillUpSpacePanel10.add (blankLabel);
fillUpSpacePanel10.add (superSizePicturesCheckBox);
priceEnterPanel.add (fillUpSpacePanel10);
fillUpSpacePanel9.add (picturePackRadioButton);
priceEnterPanel.add (fillUpSpacePanel10);
fillUpSpacePanel11.add (picturePackRadioButton);
priceEnterPanel.add (fillUpSpacePanel11);
fillUpSpacePanel12.add (listingDesignerCheckBox);
priceEnterPanel.add (fillUpSpacePanel12);
fillUpSpacePanel13.add (valuePackCheckBox);
priceEnterPanel.add (fillUpSpacePanel13);
fSp.add (galleryPictureCheckBox);
priceEnterPanel.add (fSp);
fSp1.add (subtitleCheckBox);
priceEnterPanel.add (fSp1);
fSp2.add (boldCheckBox);
priceEnterPanel.add (fSp2);
fSp3.add (borderCheckBox);
priceEnterPanel.add (fSp3);
fSp4.add (highlightCheckBox);
priceEnterPanel.add (fSp4);
fSp5.add (featuredPlusCheckBox);
priceEnterPanel.add (fSp5);
fSp6.add (galleryFeaturedCheckBox);
priceEnterPanel.add (fSp6);
fSp7.add (homePageFeaturedLabel);
priceEnterPanel.add (fSp7);
fSp8.add (homePageFeaturedComboBox);
priceEnterPanel.add (fSp8);
fSp9.add (giftCheckBox);
priceEnterPanel.add (fSp9);
newItemDescriptionPanel.add (priceEnterPanelScroll);
//Create the panel that contains the "cards".
cards = new JPanel(new CardLayout());
cards.add(newItemPanel, RADIOPANEL);
cards.add(newItemDescriptionPanel, DESCRIPTIONPANEL);
cards.add(priceEnterPanel, PRICEENTERPANEL);
topPanel.add(cards, BorderLayout.NORTH);
// Create the menu bar
menuBar = new JMenuBar();
// Set this instance as the application's menu bar
setJMenuBar( menuBar );
// Build the property sub-menu
menuProperty = new JMenu( "Properties" );
menuProperty.setMnemonic( 'P' );
// Create property items
menuPropertySystem = CreateMenuItem( menuProperty, ITEM_PLAIN,
"System...", null, 'S', null );
menuPropertyEditor = CreateMenuItem( menuProperty, ITEM_PLAIN,
"Editor...", null, 'E', null );
menuPropertyDisplay = CreateMenuItem( menuProperty, ITEM_PLAIN,
"Display...", null, 'D', null );
//Build the File-New sub-menu
menuFileNew = new JMenu ("New");
menuFileNew.setMnemonic ('N');
//Create File-New items
menuFileNewItem = CreateMenuItem( menuFileNew, ITEM_PLAIN,
"Item", null, 'A', null );
menuFileNewAccount = CreateMenuItem( menuFileNew, ITEM_PLAIN,
"Account", null, 'A', null );
// Create the file menu
menuFile = new JMenu( "File" );
menuFile.setMnemonic( 'F' );
menuBar.add( menuFile );
//Add the File-New menu
menuFile.add( menuFileNew );
// Create the file menu
// Build a file menu items
menuFileOpen = CreateMenuItem( menuFile, ITEM_PLAIN, "Open...",
new ImageIcon( "open.gif" ), 'O',
"Open a new file" );
menuFileSave = CreateMenuItem( menuFile, ITEM_PLAIN, "Save",
new ImageIcon( "save.gif" ), 'S',
" Save this file" );
menuFileSaveAs = CreateMenuItem( menuFile, ITEM_PLAIN,
"Save As...", null, 'A',
"Save this data to a new file" );
// Add the property menu
menuFile.addSeparator();
menuFile.add( menuProperty );
menuFile.addSeparator();
menuFileExit = CreateMenuItem( menuFile, ITEM_PLAIN,
"Exit", null, 'X',
"Exit the program" );
//menuFileExit.addActionListener(this);
// Create the file menu
menuEdit = new JMenu( "Edit" );
menuEdit.setMnemonic( 'E' );
menuBar.add( menuEdit );
// Create edit menu options
menuEditCut = CreateMenuItem( menuEdit, ITEM_PLAIN,
"Cut", null, 'T',
"Cut data to the clipboard" );
menuEditCopy = CreateMenuItem( menuEdit, ITEM_PLAIN,
"Copy", null, 'C',
"Copy data to the clipboard" );
menuEditPaste = CreateMenuItem( menuEdit, ITEM_PLAIN,
"Paste", null, 'P',
"Paste data from the clipboard" );
public JMenuItem CreateMenuItem( JMenu menu, int iType, String sText,
ImageIcon image, int acceleratorKey,
String sToolTip )
// Create the item
JMenuItem menuItem;
switch( iType )
case ITEM_RADIO:
menuItem = new JRadioButtonMenuItem();
break;
case ITEM_CHECK:
menuItem = new JCheckBoxMenuItem();
break;
default:
menuItem = new JMenuItem();
break;
// Add the item test
menuItem.setText( sText );
// Add the optional icon
if( image != null )
menuItem.setIcon( image );
// Add the accelerator key
if( acceleratorKey > 0 )
menuItem.setMnemonic( acceleratorKey );
// Add the optional tool tip text
if( sToolTip != null )
menuItem.setToolTipText( sToolTip );
// Add an action handler to this menu item
menuItem.addActionListener( this );
menu.add( menuItem );
return menuItem;
public void actionPerformed( ActionEvent event )
CardLayout cl = (CardLayout)(cards.getLayout());
if (event.getSource() == menuFileExit)
System.exit(0);
if (event.getSource() == menuFileNewAccount)
System.out.println ("hlkadflkajfalkdjfalksfj");
if (event.getSource() == menuFileNewItem){
if (firstRun){
newItemPanel.setVisible (true);
topPanel.setVisible (true);
cl.show(cards,RADIOPANEL);
firstRun = false;
//System.out.println( event );
private class ButtonListener implements ActionListener
public void actionPerformed(ActionEvent event)
CardLayout cl = (CardLayout)(cards.getLayout());
// cl.show(cards, (String)evt.getItem());
if (event.getSource() == continueButton){
if (!(onlineAuctionRadio.isSelected()) && !(fixedPriceRadio.isSelected()))
JOptionPane.showMessageDialog(null, "You must select at least one.", "Error", JOptionPane.ERROR_MESSAGE);
else{
if (onlineAuctionRadio.isSelected()){
cl.show (cards, DESCRIPTIONPANEL);
//newItemPanel.setVisible (false);
//newItemDescriptionPanel.setVisible (true);
if (event.getSource() == itemDescriptionContinueButton){
if (itemTitleTextField.getText().trim().equalsIgnoreCase(""))
JOptionPane.showMessageDialog(null, "You must enter a title.", "Error", JOptionPane.ERROR_MESSAGE);
else
cl.show (cards, PRICEENTERPANEL);
if (event.getSource() == backToRadioButton){
cl.show (cards, RADIOPANEL);
if (event.getSource() == backToItemDescriptionButton){
cl.show(cards, DESCRIPTIONPANEL);
if (standardPictureRadioButton.isSelected()){
superSizePicturesCheckBox.setEnabled (true);
if (picturePackRadioButton.isSelected()){
superSizePicturesCheckBox.setEnabled (false);
} //end of action performed
}Mostly I see there is about 100 times as much code as I care to look at.
So you don't know how to get a panel in a scroll pane, and then get that scroll pane into your GUI? Then try doing that by itself, not encumbered with 10000 lines of irrelevant code. Once you have it working, plug it into the big lump of code. Or if you can't get it working, ask about the small problem here. -
Uk student..Please help !!
Hi. I am 17 years old at college in the Hertfordshire region studying java programming. I am really stuck on this program and would be really greatful for some help on this. Below is my program and i am trying to create a survey in which the user clicks on the radio button, then when ok is pressed, the corresponding number is written to a seperate file and then the file is called and displayed to create a sccesful display of previous and present results. PLEASE HELP!!!
import java.applet.*;
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
import javax.swing.JApplet;
import javax.swing.JTextArea;
import java.io.*;
<applet code="Survey22" width = 1025 height = 660>
</Applet>
public class Survey22 extends JApplet implements ActionListener {
JLabel surveypic;
ImageIcon icon, name, surveyimage;
JMenuBar menubar;
JMenu menu;
JMenuItem menuitem;
JRadioButton rb1, rb2, rb3, rb4;
ButtonGroup group = new ButtonGroup();
JTextField field;
JButton ok;
JButton clear;
JMenuBar menubar2;
JMenu menu2;
JMenuItem menuitem2;
JLabel FinalFant, Quak, Crash, Hal, res;
ImageIcon results = new ImageIcon("RESULTS.JPG");
public void init(){
//***************************************************** MENUBAR **********************************************************
menubar = new JMenuBar();
menu = new JMenu("Menu");
ImageIcon results = new ImageIcon("RESULTS.JPG");
menuitem = new JMenuItem("",results);
menuitem.addActionListener(this);
menuitem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_1, ActionEvent.ALT_MASK));
menu.add(menuitem);
menubar.add(menu);
//****************************************************** MENUBAR *********************************************************
//****************************************************** OPTIONS *********************************************************
name = new ImageIcon("FINALFANTASY7.JPG");
rb1 = new JRadioButton(" Final Fantasy",name);
rb1.addActionListener(this);
getContentPane().setLayout(null);
getContentPane().add(rb1);
rb1.setBounds(10,210,270,140);
name = new ImageIcon("QUAKE.JPG");
rb2 = new JRadioButton(" Quake", name);
rb2.addActionListener(this);
getContentPane().setLayout(null);
getContentPane().add(rb2);
rb2.setBounds(310,210,270,140);
name = new ImageIcon("CRASHBANDICOOT.JPG");
rb3 = new JRadioButton(" Crash Bandicoot", name);
rb3.addActionListener(this);
getContentPane().setLayout(null);
getContentPane().add(rb3);
rb3.setBounds(610,210,300,140);
name = new ImageIcon("HALO.JPG");
rb4 = new JRadioButton(" Halo", name);
rb4.addActionListener(this);
getContentPane().setLayout(null);
getContentPane().add(rb4);
rb4.setBounds(10,365,350,160);
//****************************************************** OPTIONS *********************************************************
//****************************************************** EXTRAS **********************************************************
surveyimage = new ImageIcon("WELCOME.JPG");
surveypic = new JLabel(surveyimage);
getContentPane().add(surveypic);
surveypic.setBounds(10,40,465,150);
field = new JTextField();
field.setEditable(false);
getContentPane().setLayout( null );
getContentPane().add(field);
field.setBounds(600,40,100,30);
ok = new JButton("Ok");
ok.addActionListener(this);
getContentPane().add(ok);
ok.setBounds(575,100,73,30);
clear = new JButton("Cancel");
clear.addActionListener(this);
getContentPane().add(clear);
clear.setBounds(655,100,73,30);
getContentPane().setLayout(new BorderLayout());
getContentPane().add(menubar, BorderLayout.NORTH);
//******************************************************* Action ************************************************************
public void actionPerformed(ActionEvent e){
if(e.getActionCommand() == " Final Fantasy") field.setText(" Final Fantasy");
else if(e.getActionCommand() == " Quake") field.setText(" Quake");
else if(e.getActionCommand() == " Crash Bandicoot") field.setText(" Crash bandicoot");
else if(e.getActionCommand() == " Halo") field.setText(" Halo");
else if(e.getActionCommand() == "Cancel") field.setText("");
else if(e.getActionCommand() == "Ok" || e.getActionCommand() == "") {
try{
FileWriter fw = new FileWriter("Survey2Results.txt", true);
char result = 0;
if(field.getText().equals(" Final Fantasy")) result = 1;
else if(field.getText().equals(" Quake")) result = 2;
else if(field.getText().equals(" Crash bandicoot")) result = 3;
else if(field.getText().equals(" Halo")) result = 4;
else if(field.getText().equals(null)) result = 0;
BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));
fw.write(result);
fw.close();
getContentPane().remove(field);
getContentPane().remove(ok);
getContentPane().remove(clear);
getContentPane().remove(surveypic);
getContentPane().remove(rb1);
getContentPane().remove(rb2);
getContentPane().remove(rb3);
getContentPane().remove(rb4);
getContentPane().remove(menubar);
String out;
FileReader fr = new FileReader("Survey2Results.txt");
BufferedReader br = new BufferedReader(fr);
out = br.readLine();
int ff=0, q=0, h=0, cb =0;
for(int i = 0; i < out.length(); i++){
int nums[] = { out.charAt(i)};
if(out.charAt(i) == '1') ff++;
else if(out.charAt(i) == '2') q++;
else if(out.charAt(i) == '3') cb++;
else if(out.charAt(i) == '4') h++;
res = new JLabel(results);
FinalFant = new JLabel("Final Fantasy, currently has : " + ff + " Votes.");
Quak = new JLabel("Quake, currently has : " + q + " votes.");
Crash = new JLabel("Crash Bandicoot, currently has : " + cb + " votes.");
Hal = new JLabel("Halo, currently has : " + h + " votes.");
fr.close();
getContentPane().setLayout(null);
getContentPane().add(res);
getContentPane().add(FinalFant);
getContentPane().add(Quak);
getContentPane().add(Crash);
getContentPane().add(Hal);
res.setBounds(390,50,200,100);
FinalFant.setBounds(30,200,300,50);
Quak.setBounds(400,200,200,50);
Crash.setBounds(30,400,200,50);
Hal.setBounds(400,400,200,50);
repaint();
}catch(IOException exc){}
Thanks Matt.Do you have a specific problem or question, or would you just like us to do your homework for you?
If you have a specific question about how to use a certain class or what's creating an exception in your code, we're all more than happy to help out. Otherwise, if you neeed help in designing your project, you should probably see your prof. a TA, or a friend
Hi. I am 17 years old at college in the Hertfordshire
region studying java programming. I am really stuck
on this program and would be really greatful for some
help on this. Below is my program and i am trying to
create a survey in which the user clicks on the radio
button, then when ok is pressed, the corresponding
number is written to a seperate file and then the
file is called and displayed to create a sccesful
display of previous and present results. PLEASE
HELP!!! -
Please help me in creating a form using Swing.
(I m sorry if I've posted similar post in some other thread.I am new to this forum..:))
There are several problems which I am facing while coding a form.
1. In the form I have one JComboBox
of Country and other of State. Now I want it in such a way that when
I select a country from the Country JComboBox ,the corresponding states
automatically appears in the State JComboBox.
2. I need to add picture frame in the 6th tab so that the picture shows up when clicked browse and open.
3.I need to add tables in 1st and 5th tab which shows up the details through database when added through several textboxes and combo boxes.
so please help me!
Here's my code
==========================================================
import javax.swing.JFrame;
import javax.swing.JTabbedPane;
import javax.swing.JPanel;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JCheckBox;
import javax.swing.border.*;
import javax.swing.table.*;
import javax.swing.Box;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class Design extends JFrame
public Design()
super("Tenant Form");
setLayout(new BorderLayout());
JTabbedPane tabbedPane=new JTabbedPane(); //creating tabbed buttons
//<--------coding for first tab--------->
JPanel panel1=new JPanel();
tabbedPane.addTab("Detail of Landlord",null,panel1,"first tab"); //here panel1 is created for tab1
GridBagConstraints gbc=new GridBagConstraints();
gbc.insets=new Insets(2,2,2,2);
gbc.anchor=GridBagConstraints.WEST;
JPanel jp11 = new JPanel(); //1st panel in 1st tab for top labels and buttons
jp11.setLayout(new GridBagLayout());
JLabel l241 = new JLabel("Name Of LandLord");
jp11.add(l241,gbc);
JComboBox jc01=new JComboBox();
jc01.addItem("Select");
jc01.addItem("Mr.");
jc01.addItem("Mrs.");
gbc.gridx=1;
jp11.add(jc01,gbc);
JTextField f01=new JTextField(10);
gbc.gridx=2;
jp11.add(f01,gbc);
JLabel l251 = new JLabel("Sex");
gbc.gridx=5;
gbc.insets=new Insets(2,20,2,2);
jp11.add(l251,gbc);
JComboBox jc11=new JComboBox();
jc11.addItem("Select");
jc11.addItem("Male");
jc11.addItem("Female");
gbc.gridx=6;
gbc.insets=new Insets(2,2,2,2);
jp11.add(jc11,gbc);
JLabel l261 = new JLabel("Age(Yrs)");
gbc.gridx=8;
gbc.insets=new Insets(2,20,2,2);
jp11.add(l261,gbc);
JTextField f11=new JTextField(3);
gbc.gridx=9;
gbc.insets=new Insets(2,2,2,2);
jp11.add(f11,gbc);
JLabel l271 = new JLabel("Occupation");
gbc.gridx= 11;
gbc.insets=new Insets(2,20,2,2);
jp11.add(l271,gbc);
JComboBox jc21=new JComboBox();
jc21.addItem("Select");
jc21.addItem("Engineer");
jc21.addItem("Business");
gbc.gridx=12;
gbc.insets=new Insets(2,2,2,2);
jp11.add(jc21,gbc);
JButton ab1=new JButton("ADD");
gbc.gridx=14;
gbc.insets=new Insets(2,20,2,2);
jp11.add(ab1,gbc);
panel1.add(jp11);
//<--coding for adding table with scroll pane #yet to be coded#-->
JTable jtab1=new JTable();
//start of p21 panel. 1st of two titledborder panels in tab 1
JPanel jp21=new JPanel();
jp21.setBorder(new TitledBorder("Address Of Landlord Property"));
jp21.setLayout(new GridBagLayout());
JLabel l11=new JLabel("Property/House/Building Address");
gbc.gridx=0;
gbc.gridy=0;
jp21.add(l11,gbc);
JTextArea ta11=new JTextArea(3,15);
ta11.setLineWrap(true);
int v=ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED;
int h=ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER;
JScrollPane scroll11=new JScrollPane(ta11,v,h);
gbc.gridx=1;
jp21.add(scroll11);
jp21.add(ta11,gbc);
JLabel l21=new JLabel("Land Mark");
gbc.gridx=0;
gbc.gridy=1;
gbc.ipady=0;
gbc.gridheight=1;
jp21.add(l21,gbc);
JTextField tf21=new JTextField(15);
gbc.gridx=1;
gbc.gridy=1;
jp21.add(tf21,gbc);
JLabel l31=new JLabel("Country");
gbc.gridx=0;
gbc.gridy=2;
jp21.add(l31,gbc);
JComboBox c11=new JComboBox();
c11.addItem("India");
c11.addItem("US");
c11.addItem("Australia");
gbc.gridx=1;
gbc.gridy=2;
jp21.add(c11,gbc);
JLabel l41=new JLabel("State");
gbc.gridx=0;
gbc.gridy=3;
jp21.add(l41,gbc);
JComboBox c21=new JComboBox();
c21.addItem("Rajasthan");
c21.addItem("Delhi");
c21.addItem("Maharastra");
gbc.gridx=1;
gbc.gridy=3;
jp21.add(c21,gbc);
JLabel l51=new JLabel("District");
gbc.gridx=0;
gbc.gridy=4;
jp21.add(l51,gbc);
JComboBox c31=new JComboBox();
c31.addItem("jaipur");
c31.addItem("ajmer");
c31.addItem("alwar");
gbc.gridx=1;
gbc.gridy=4;
jp21.add(c31,gbc);
JLabel l61=new JLabel("City/Town");
gbc.gridx=0;
gbc.gridy=5;
jp21.add(l61,gbc);
JTextField tf31=new JTextField(15);
gbc.gridx=1;
gbc.gridy=5;
jp21.add(tf31,gbc);
JLabel l71=new JLabel("Police District");
gbc.gridx=0;
gbc.gridy=6;
jp21.add(l71,gbc);
JComboBox c41=new JComboBox();
c41.addItem("Jaipur");
c41.addItem("Alwar");
c41.addItem("Ajmer");
gbc.gridx=1;
gbc.gridy=6;
jp21.add(c41,gbc);
JLabel l81=new JLabel("Police Circle");
gbc.gridx=0;
gbc.gridy=7;
jp21.add(l81,gbc);
JComboBox c51=new JComboBox();
c51.addItem("India");
c51.addItem("US");
c51.addItem("Australia");
gbc.gridx=1;
gbc.gridy=7;
jp21.add(c51,gbc);
JLabel l91=new JLabel("Police station");
gbc.gridx=0;
gbc.gridy=8;
jp21.add(l91,gbc);
JComboBox c61=new JComboBox();
c61.addItem("Bani Park");
c61.addItem("Raja Park");
c61.addItem("Malviya Nagar");
gbc.gridx=1;
gbc.gridy=8;
jp21.add(c61,gbc);
JLabel l101=new JLabel("Pin No.");
gbc.gridx=0;
gbc.gridy=9;
jp21.add(l101,gbc);
JTextField tf41=new JTextField(15);
gbc.gridx=1;
gbc.gridy=9;
jp21.add(tf41,gbc);
JLabel l111=new JLabel("Phone No.(R)");
gbc.gridx=0;
gbc.gridy=10;
jp21.add(l111,gbc);
JTextField tf51=new JTextField(15);
gbc.gridx=1;
gbc.gridy=10;
jp21.add(tf51,gbc);
//start of p31.2nd of two titledborder panels in tab 1
JPanel jp31=new JPanel();
jp31.setBorder(new TitledBorder("Address Of Landlord Office"));
jp31.setLayout(new GridBagLayout());
JLabel l121=new JLabel("Office Address");
gbc.gridx=0;
gbc.gridy=0;
jp31.add(l121,gbc);
JTextArea ta61=new JTextArea(3,15);
ta61.setLineWrap(true);
JScrollPane scroll2=new JScrollPane(ta61);
gbc.gridx=1;
gbc.gridy=0;
jp31.add(ta61,gbc);
JLabel l131=new JLabel("Country");
gbc.gridx=0;
gbc.gridy=1;
gbc.gridheight=1;
jp31.add(l131,gbc);
JComboBox c12=new JComboBox();
c12.addItem("India");
c12.addItem("US");
c12.addItem("Australia");
gbc.gridx=1;
gbc.gridy=1;
jp31.add(c12,gbc);
JLabel l141=new JLabel("State");
gbc.gridx=0;
gbc.gridy=2;
jp31.add(l141,gbc);
JComboBox c22=new JComboBox();
c22.addItem("Rajasthan");
c22.addItem("Delhi");
c22.addItem("Maharastra");
gbc.gridx=1;
gbc.gridy=2;
jp31.add(c22,gbc);
JLabel l151=new JLabel("District");
gbc.gridx=0;
gbc.gridy=3;
jp31.add(l151,gbc);
JComboBox c32=new JComboBox();
c32.addItem("jaipur");
c32.addItem("ajmer");
c32.addItem("alwar");
gbc.gridx=1;
gbc.gridy=3;
jp31.add(c32,gbc);
JLabel l161=new JLabel("City/Town");
gbc.gridx=0;
gbc.gridy=4;
jp31.add(l161,gbc);
JTextField tf71=new JTextField(15);
gbc.gridx=1;
gbc.gridy=4;
jp31.add(tf71,gbc);
JLabel l171=new JLabel("Police District");
gbc.gridx=0;
gbc.gridy=5;
jp31.add(l171,gbc);
JComboBox c42=new JComboBox();
c42.addItem("Jaipur");
c42.addItem("Alwar");
c42.addItem("Ajmer");
gbc.gridx=1;
gbc.gridy=5;
jp31.add(c42,gbc);
JLabel l181=new JLabel("Police Circle");
gbc.gridx=0;
gbc.gridy=6;
jp31.add(l181,gbc);
JComboBox c52=new JComboBox();
c52.addItem("India");
c52.addItem("US");
c52.addItem("Australia");
gbc.gridx=1;
gbc.gridy=6;
jp31.add(c52,gbc);
JLabel l191=new JLabel("Police station");
gbc.gridx=0;
gbc.gridy=7;
jp31.add(l191,gbc);
JComboBox c62=new JComboBox();
c62.addItem("Bani Park");
c62.addItem("Raja Park");
c62.addItem("Malviya Nagar");
gbc.gridx=1;
gbc.gridy=7;
jp31.add(c62,gbc);
JLabel l201=new JLabel("Pin No.");
gbc.gridx=0;
gbc.gridy=8;
jp31.add(l201,gbc);
JTextField tf81=new JTextField(15);
gbc.gridx=1;
gbc.gridy=8;
jp31.add(tf81,gbc);
JLabel l211=new JLabel("Phone No.(O)");
gbc.gridx=0;
gbc.gridy=9;
jp31.add(l211,gbc);
JTextField tf91=new JTextField(15);
gbc.gridx=1;
gbc.gridy=9;
jp31.add(tf91,gbc);
JLabel l221=new JLabel("Phone No.(M)");
gbc.gridx=0;
gbc.gridy=10;
gbc.gridheight=1;
jp31.add(l221,gbc);
JTextField tf101=new JTextField(15);
gbc.gridx=1;
gbc.gridy=10;
jp31.add(tf101,gbc);
JLabel l231=new JLabel("E-mail");
gbc.gridx=0;
gbc.gridy=11;
gbc.gridheight=1;
jp31.add(l231,gbc);
JTextField tf111=new JTextField(15);
gbc.gridx=1;
gbc.gridy=11;
jp31.add(tf111,gbc);
JPanel jp41=new JPanel(); //adding above two panels p21 and p31 to p41 panel.
jp41.setLayout(new BoxLayout(jp41,BoxLayout.X_AXIS));
jp41.add(jp21);
jp41.add(Box.createHorizontalStrut(50));
jp41.add(jp31);
panel1.add(jp41); //adding p41 panel to panel1
//<--------coding for second tab--------->
JPanel panel2 = new JPanel();
tabbedPane.addTab("Id of Landlord",null,panel2,"second tab");
panel2.setLayout(new FlowLayout());
//adding radiobutton above TitledBorder panel
JPanel jp02=new JPanel();
JLabel l12=new JLabel("Identity Known");
JRadioButton jrb12=new JRadioButton("Yes");
JRadioButton jrb22=new JRadioButton("No");
ButtonGroup bg12=new ButtonGroup();
bg12.add(jrb12);
bg12.add(jrb22);
jp02.add(l12);
jp02.add(jrb12);
jp02.add(jrb22);
//adding TitledBorder panel
JPanel jp12=new JPanel();
jp12.setBorder(new TitledBorder("Identity Detail"));
jp12.setLayout(new GridBagLayout());
gbc.insets=new Insets(5,5,5,5);
JLabel l22=new JLabel("Identity Card");
gbc.gridx=0;
gbc.gridy=0;
jp12.add(l22,gbc);
JTextField jtf12=new JTextField(10);
gbc.gridx=1;
jp12.add(jtf12,gbc);
JLabel l32=new JLabel("Date of Issue");
gbc.gridx=0;
gbc.gridy=1;
jp12.add(l32,gbc);
JTextField jtf22=new JTextField(10);
gbc.insets=new Insets(5,5,5,25);
gbc.gridx=1;
jp12.add(jtf22,gbc);
JLabel l42=new JLabel("Identity Number");
gbc.insets=new Insets(5,5,5,5);
gbc.gridx=2;
jp12.add(l42,gbc);
JTextField jtf32=new JTextField(10);
gbc.gridx=3;
jp12.add(jtf32,gbc);
JLabel l52=new JLabel("Name Of Issuer");
gbc.gridx=0;
gbc.gridy=2;
jp12.add(l52,gbc);
JTextField jtf42=new JTextField(10);
gbc.insets=new Insets(5,5,5,25);
gbc.gridx=1;
jp12.add(jtf42,gbc);
JLabel l62= new JLabel("Place Of Issuer");
gbc.insets=new Insets(5,5,5,5);
gbc.gridx=2;
jp12.add(l62,gbc);
JTextField jtf52=new JTextField(10);
gbc.gridx=3;
jp12.add(jtf52,gbc);
gbc.gridx=0;
gbc.gridy=2;
Box b12 =Box.createVerticalBox(); //adding both panels to vertica box and adding it to panel2
b12.add(jp02);
b12.add(jp12);
panel2.add(b12);
//<--------coding for third tab--------->
JPanel panel3 = new JPanel();
tabbedPane.addTab("Detail of Tenant",null,panel3,"third tab");
//adding panel for top data
JPanel jp13=new JPanel(); //jp13 panel for details above 3 TitledBorder panels
jp13.setLayout(new GridBagLayout());
JLabel l13=new JLabel("Name");
gbc.insets=new Insets(2,2,2,2);
gbc.gridx=0;
gbc.gridy=0;
jp13.add(l13,gbc);
JComboBox c13=new JComboBox();
c13.addItem("Select");
c13.addItem("Mr.");
c13.addItem("Mrs.");
gbc.gridx=1;
jp13.add(c13,gbc);
JTextField jtf13=new JTextField(16);
gbc.gridx=2;
gbc.gridwidth=2;
jp13.add(jtf13,gbc);
JLabel l23=new JLabel("Sex");
gbc.insets=new Insets(2,20,2,2);
gbc.gridx=4;
gbc.gridwidth=1;
jp13.add(l23,gbc);
JComboBox c23=new JComboBox();
c23.addItem("Select");
c23.addItem("Male");
c23.addItem("Female");
gbc.insets=new Insets(2,2,2,2);
gbc.gridx=5;
jp13.add(c23,gbc);
JLabel l33=new JLabel("Father/Mother/Husband's Name");
gbc.gridy=1;
gbc.gridx=0;
jp13.add(l33,gbc);
JComboBox c33=new JComboBox();
c33.addItem("Select");
c33.addItem("Mr.");
c33.addItem("Mrs.");
gbc.gridx=1;
jp13.add(c33,gbc);
JComboBox c43=new JComboBox();
c43.addItem("Select");
c43.addItem("Mr.");
c43.addItem("Mrs.");
gbc.gridx=2;
jp13.add(c43,gbc);
JTextField jtf23=new JTextField(10);
gbc.gridx=3;
jp13.add(jtf23,gbc);
JLabel l43=new JLabel("Age(Yrs)");
gbc.insets=new Insets(2,20,2,2);
gbc.gridx=4;
jp13.add(l43,gbc);
JTextField jtf33=new JTextField(3);
gbc.insets=new Insets(2,2,2,2);
gbc.gridx=5;
jp13.add(jtf33,gbc);
JLabel l53=new JLabel("Citizenship");
gbc.gridy=2;
gbc.gridx=0;
jp13.add(l53,gbc);
JComboBox c53=new JComboBox();
c53.addItem("Select");
c53.addItem("Indian");
c53.addItem("Australian");
gbc.gridx=1;
gbc.gridwidth=2;
jp13.add(c53,gbc);
JLabel l63=new JLabel("Occupation");
gbc.insets=new Insets(2,20,2,2);
gbc.gridx=4;
gbc.gridwidth=1;
jp13.add(l63,gbc);
JComboBox c63=new JComboBox();
c63.addItem("Select");
c63.addItem("Engineer");
c63.addItem("Doctor");
gbc.insets=new Insets(2,2,2,2);
gbc.gridx=5;
jp13.add(c63,gbc);
panel3.add(jp13);
JPanel jp23=new JPanel(); //first of 3 TitledBorder panels
jp23.setBorder(new TitledBorder("Local Address"));
jp23.setLayout(new GridBagLayout());
JLabel l73=new JLabel("Local Address");
gbc.gridx=0;
gbc.gridy=0;
jp23.add(l73,gbc);
JTextArea ta43=new JTextArea(3,10);
ta43.setLineWrap(true);
JScrollPane scroll13=new JScrollPane(ta43);
gbc.gridx=1;
gbc.gridy=0;
jp23.add(ta43,gbc);
JLabel l83=new JLabel("Country");
gbc.gridx=0;
gbc.gridy=1;
gbc.gridheight=1;
jp23.add(l83,gbc);
JComboBox c73=new JComboBox();
c73.addItem("India");
c73.addItem("US");
c73.addItem("Australia");
gbc.gridx=1;
gbc.gridy=1;
jp23.add(c73,gbc);
JLabel l93=new JLabel("State");
gbc.gridx=0;
gbc.gridy=2;
jp23.add(l93,gbc);
JComboBox c83=new JComboBox();
c83.addItem("Rajasthan");
c83.addItem("Delhi");
c83.addItem("Maharastra");
gbc.gridx=1;
gbc.gridy=2;
jp23.add(c83,gbc);
JLabel l103=new JLabel("District");
gbc.gridx=0;
gbc.gridy=3;
jp23.add(l103,gbc);
JComboBox c93=new JComboBox();
c93.addItem("jaipur");
c93.addItem("ajmer");
c93.addItem("alwar");
gbc.gridx=1;
gbc.gridy=3;
jp23.add(c93,gbc);
JLabel l113=new JLabel("City/Town");
gbc.gridx=0;
gbc.gridy=4;
jp23.add(l113,gbc);
JTextField tf53=new JTextField(10);
gbc.gridx=1;
gbc.gridy=4;
jp23.add(tf53,gbc);
JLabel l123=new JLabel("Police District");
gbc.gridx=0;
gbc.gridy=5;
jp23.add(l123,gbc);
JComboBox c103=new JComboBox();
c103.addItem("Jaipur");
c103.addItem("Alwar");
c103.addItem("Ajmer");
gbc.gridx=1;
gbc.gridy=5;
jp23.add(c103,gbc);
JLabel l133=new JLabel("Police Circle");
gbc.gridx=0;
gbc.gridy=6;
jp23.add(l133,gbc);
JComboBox c113=new JComboBox();
c113.addItem("India");
c113.addItem("US");
c113.addItem("Australia");
gbc.gridx=1;
gbc.gridy=6;
jp23.add(c113,gbc);
JLabel l143=new JLabel("Police station");
gbc.gridx=0;
gbc.gridy=7;
jp23.add(l143,gbc);
JComboBox c123=new JComboBox();
c123.addItem("Bani Park");
c123.addItem("Raja Park");
c123.addItem("Malviya Nagar");
gbc.gridx=1;
gbc.gridy=7;
jp23.add(c123,gbc);
JLabel l153=new JLabel("Pin No.");
gbc.gridx=0;
gbc.gridy=8;
jp23.add(l153,gbc);
JTextField tf63=new JTextField(10);
gbc.gridx=1;
gbc.gridy=8;
jp23.add(tf63,gbc);
JLabel l163=new JLabel("Phone No.(R)");
gbc.gridx=0;
gbc.gridy=9;
jp23.add(l163,gbc);
JTextField tf73=new JTextField(10);
gbc.gridx=1;
gbc.gridy=9;
jp23.add(tf73,gbc);
JLabel l173=new JLabel("E-mail");
gbc.gridx=0;
gbc.gridy=10;
gbc.gridheight=1;
jp23.add(l173,gbc);
JTextField tf83=new JTextField(10);
gbc.gridx=1;
gbc.gridy=10;
jp23.add(tf83,gbc);
JPanel jp33=new JPanel(); //second of 3 TitledBorder panels
jp33.setBorder(new TitledBorder("Permanent Address"));
jp33.setLayout(new GridBagLayout());
JLabel l183=new JLabel("Perm. Address");
gbc.gridx=0;
gbc.gridy=0;
jp33.add(l183,gbc);
JTextArea ta93=new JTextArea(5,10);
JScrollPane scroll23=new JScrollPane(ta43);
ta93.setLineWrap(true);
gbc.gridx=1;
gbc.gridy=0;
jp33.add(ta43,gbc);
JLabel l193=new JLabel("Country");
gbc.gridx=0;
gbc.gridy=1;
gbc.gridheight=1;
jp33.add(l193,gbc);
JComboBox c133=new JComboBox();
c133.addItem("India");
c133.addItem("US");
c133.addItem("Australia");
gbc.gridx=1;
gbc.gridy=1;
jp33.add(c133,gbc);
JLabel l203=new JLabel("State");
gbc.gridx=0;
gbc.gridy=2;
jp33.add(l203,gbc);
JComboBox c143=new JComboBox();
c143.addItem("Rajasthan");
c143.addItem("Delhi");
c143.addItem("Maharastra");
gbc.gridx=1;
gbc.gridy=2;
jp33.add(c143,gbc);
JLabel l213=new JLabel("District");
gbc.gridx=0;
gbc.gridy=3;
jp33.add(l213,gbc);
JComboBox c153=new JComboBox();
c153.addItem("jaipur");
c153.addItem("ajmer");
c153.addItem("alwar");
gbc.gridx=1;
gbc.gridy=3;
jp33.add(c153,gbc);
JLabel l223=new JLabel("City/Town");
gbc.gridx=0;
gbc.gridy=4;
jp33.add(l223,gbc);
JTextField tf103=new JTextField(10);
gbc.gridx=1;
gbc.gridy=4;
jp33.add(tf103,gbc);
JLabel l233=new JLabel("Police District");
gbc.gridx=0;
gbc.gridy=5;
jp33.add(l233,gbc);
JComboBox c163=new JComboBox();
c163.addItem("Jaipur");
c163.addItem("Alwar");
c163.addItem("Ajmer");
gbc.gridx=1;
gbc.gridy=5;
jp33.add(c163,gbc);
JLabel l243=new JLabel("Police Circle");
gbc.gridx=0;
gbc.gridy=6;
jp33.add(l243,gbc);
JComboBox c173=new JComboBox();
c173.addItem("India");
c173.addItem("US");
c173.addItem("Australia");
gbc.gridx=1;
gbc.gridy=6;
jp33.add(c173,gbc);
JLabel l253=new JLabel("Police station");
gbc.gridx=0;
gbc.gridy=7;
jp33.add(l253,gbc);
JComboBox c183=new JComboBox();
c183.addItem("Bani Park");
c183.addItem("Raja Park");
c183.addItem("Malviya Nagar");
gbc.gridx=1;
gbc.gridy=7;
jp33.add(c183,gbc);
JLabel l263=new JLabel("Pin No.");
gbc.gridx=0;
gbc.gridy=8;
jp33.add(l263,gbc);
JTextField tf113=new JTextField(10);
gbc.gridx=1;
gbc.gridy=8;
jp33.add(tf113,gbc);
JLabel l273=new JLabel("Phone No.(R)");
gbc.gridx=0;
gbc.gridy=9;
jp33.add(l273,gbc);
JTextField tf123=new JTextField(10);
gbc.gridx=1;
gbc.gridy=9;
jp33.add(tf123,gbc);
JLabel l283=new JLabel("phone No.(M)");
gbc.gridx=0;
gbc.gridy=10;
gbc.gridheight=1;
jp33.add(l283,gbc);
JTextField tf133=new JTextField(10);
gbc.gridx=1;
gbc.gridy=10;
jp33.add(tf133,gbc);
JPanel jp43=new JPanel(); //third of 3 TitledBorder panels
jp43.setBorder(new TitledBorder("Ex-Home Address"));
jp43.setLayout(new GridBagLayout());
JLabel l293=new JLabel("Address");
gbc.gridx=0;
gbc.gridy=0;
jp43.add(l293,gbc);
JTextArea ta143=new JTextArea(3,10);
ta143.setLineWrap(true);
JScrollPane scroll33=new JScrollPane(ta143);
gbc.gridx=1;
gbc.gridy=0;
jp43.add(ta143,gbc);
JLabel l303=new JLabel("Country");
gbc.gridx=0;
gbc.gridy=1;
gbc.gridheight=1;
jp43.add(l303,gbc);
JComboBox c193=new JComboBox();
c193.addItem("India");
c193.addItem("US");
c193.addItem("Australia");
gbc.gridx=1;
gbc.gridy=1;
jp43.add(c193,gbc);
JLabel l313=new JLabel("State");
gbc.gridx=0;
gbc.gridy=2;
jp43.add(l313,gbc);
JComboBox c203=new JComboBox();
c203.addItem("Rajasthan");
c203.addItem("Delhi");
c203.addItem("Maharastra");
gbc.gridx=1;
gbc.gridy=2;
jp43.add(c203,gbc);
JLabel l323=new JLabel("District");
gbc.gridx=0;
gbc.gridy=3;
jp43.add(l323,gbc);
JComboBox c213=new JComboBox();
c213.addItem("jaipur");
c213.addItem("ajmer");
c213.addItem("alwar");
gbc.gridx=1;
gbc.gridy=3;
jp43.add(c213,gbc);
JLabel l333=new JLabel("City/Town");
gbc.gridx=0;
gbc.gridy=4;
jp43.add(l333,gbc);
JTextField tf153=new JTextField(10);
gbc.gridx=1;
gbc.gridy=4;
jp43.add(tf153,gbc);
JLabel l343=new JLabel("Police District");
gbc.gridx=0;
gbc.gridy=5;
jp43.add(l343,gbc);
JComboBox c223=new JComboBox();
c223.addItem("Jaipur");
c223.addItem("Alwar");
c223.addItem("Ajmer");
gbc.gridx=1;
gbc.gridy=5;
jp43.add(c223,gbc);
JLabel l353=new JLabel("Police Circle");
gbc.gridx=0;
gbc.gridy=6;
jp43.add(l353,gbc);
JComboBox c233=new JComboBox();
c233.addItem("India");
c233.addItem("US");
c233.addItem("Australia");
gbc.gridx=1;
gbc.gridy=6;
jp43.add(c233,gbc);
JLabel l363=new JLabel("Police station");
gbc.gridx=0;
gbc.gridy=7;
jp43.add(l363,gbc);
JComboBox c243=new JComboBox();
c243.addItem("Bani Park");
c243.addItem("Raja Park");
c243.addItem("Malviya Nagar");
gbc.gridx=1;
gbc.gridy=7;
jp43.add(c123,gbc);
JLabel l373=new JLabel("Pin No.");
gbc.gridx=0;
gbc.gridy=8;
jp43.add(l373,gbc);
JTextField tf163=new JTextField(10);
gbc.gridx=1;
gbc.gridy=8;
jp43.add(tf163,gbc);
JLabel l383=new JLabel("Phone");
gbc.gridx=0;
gbc.gridy=9;
jp43.add(l383,gbc);
JTextField tf173=new JTextField(10);
gbc.gridx=1;
gbc.gridy=9;
jp43.add(tf173,gbc);
JLabel l393=new JLabel("Leaving Date");
gbc.gridx=0;
gbc.gridy=10;
gbc.gridheight=1;
jp43.add(l393,gbc);
JTextField tf183=new JTextField(10);
gbc.gridx=1;
gbc.gridy=10;
jp43.add(tf183,gbc);
/*JCheckBox cb13=new JCheckBox("Approx");
gbc.gridx=2;
gbc.gridy=10;
jp43.add(cb13);*/
JPanel jp53=new JPanel(); //panel for addin all 3 TitledBorder panels
jp53.setLayout(new BoxLayout(jp53,BoxLayout.X_AXIS));
jp53.add(jp23);
jp53.add(Box.createHorizontalStrut(30)); //giving space between each TitledBorder panel
jp53.add(jp33);
jp53.add(Box.createHorizontalStrut(30));
jp53.add(jp43);
panel3.add(jp53); //adding panel which contains all 3 TitledBorder panels to panel3
JPanel jp63=new JPanel(); //jp63 panel for bottom data
jp63.setBorder(new TitledBorder("Tennancy Start/End"));
JLabel l403=new JLabel("From Date");
jp63.add(l403);
JTextField jtf193=new JTextField(12);
jp63.add(jtf193);
JCheckBox jcb23=new JCheckBox("Approx");
jp63.add(jcb23);
JLabel l413=new JLabel("To Date");
jp63.add(l413);
JTextField jtf203=new JTextField(12);
jp63.add(jtf203);
JCheckBox jcb33=new JCheckBox("Approx");
jp63.add(jcb33);
panel3.add(jp63); //adding bottom details panel jp63 to panel3
//<--------coding for fourth tab--------->
JPanel panel4 = new JPanel();
tabbedPane.addTab("Id of Tenant",null,panel4,"fourth tab");
panel4.setLayout(new FlowLayout());
//adding radiobutton above TitledBorder panel jp14
JPanel jp04=new JPanel();
JLabel l14=new JLabel("Identity Known");
JRadioButton jrb14=new JRadioButton("Yes");
JRadioButton jrb24=new JRadioButton("No");
ButtonGroup bg14=new ButtonGroup();
bg14.add(jrb14);
bg14.add(jrb24);
jp04.add(l14);
jp04.add(jrb14);
jp04.add(jrb24);
//adding TitledBorder panel jp14
JPanel jp14=new JPanel();
jp14.setBorder(new TitledBorder("Identity Detail"));
jp14.setLayout(new GridBagLayout());
gbc.insets=new Insets(5,5,5,5);
JLabel l24=new JLabel("Identity Card");
gbc.gridx=0;
gbc.gridy=0;
jp14.add(l24,gbc);
JTextField jtf14=new JTextField(10);
gbc.gridx=1;
jp14.add(jtf14,gbc);
JLabel l34=new JLabel("Date of Issue");
gbc.gridx=0;
gbc.gridy=1;
jp14.add(l34,gbc);
JTextField jtf24=new JTextField(10);
gbc.insets=new Insets(5,5,5,25);
gbc.gridx=1;
jp14.add(jtf24,gbc);
JLabel l44=new JLabel("Identity Number");
gbc.insets=new Insets(5,5,5,5);
gbc.gridx=2;
jp14.add(l44,gbc);
JTextField jtf34=new JTextField(10);
gbc.gridx=3;
jp14.add(jtf34,gbc);
JLabel l54=new JLabel("Name Of Issuer");
gbc.gridx=0;
gbc.gridy=2;
jp14.add(l54,gbc);
JTextField jtf44=new JTextField(10);
gbc.insets=new Insets(5,5,5,25);
gbc.gridx=1;
jp14.add(jtf44,gbc);
JLabel l64=new JLabel("Place Of Issuer");
gbc.insets=new Insets(5,5,5,5);
gbc.gridx=2;
jp14.add(l64,gbc);
JTextField jtf54=new JTextField(10);
gbc.gridx=3;
jp14.add(jtf54,gbc);
gbc.gridx=0;
gbc.gridy=2;
Box b14=Box.createVerticalBox(); //adding both panels to panel4 in vertical box
b14.add(jp04);
b14.add(jp14);
panel4.add(b14);
//<--------coding for fifth tab--------->
JPanel panel5 = new JPanel();
tabbedPane.addTab("Info Of Other Members",null,panel5,"fifth tab");
JPanel jp15=new JPanel(); //top panel jp15 for details above add delete buttons
jp15.setLayout(new GridBagLayout());
JLabel l15=new JLabel("Name");
gbc.gridx=0;
gbc.gridy=0;
gbc.insets=new Insets(10,10,10,10);
jp15.add(l15,gbc);
JTextField jtf15=new JTextField(10);
gbc.gridx=1;
jp15.add(jtf15,gbc);
JLabel l25=new JLabel("Sex");
gbc.gridx=2;
gbc.insets=new Insets(10,80,10,10);
jp15.add(l25,gbc);
JComboBox jcb15=new JComboBox();
jcb15.addItem("Male");
jcb15.addItem("Female");
gbc.gridx=3;
gbc.insets=new Insets(10,10,10,10);
jp15.add(jcb15,gbc);
JLabel l35=new JLabel("Relation");
gbc.gridx=0;
gbc.gridy=1;
gbc.insets=new Insets(10,10,40,10);
jp15.add(l35,gbc);
JTextField jtf25=new JTextField(10);
gbc.gridx=1;
jp15.add(jtf25,gbc);
JLabel l45=new JLabel("Age");
gbc.gridx=2;
gbc.insets=new Insets(10,80,40,10);
jp15.add(l45,gbc);
JTextField jtf35 =new JTextField(10);
gbc.gridx=3;
gbc.insets=new Insets(10,10,40,10);
jp15.add(jtf35,gbc);
JPanel jp25=new JPanel(); //middle panel jp25 for adding "add" and "delete" buttons
JButton jb15=new JButton("Add");
JButton jb25=new JButton("Delete");
jp25.add(jb15);
jp25.add(jb25);
//adding table #yet to be coded#
Box b15=Box.createVerticalBox();
b15.add(jp15);
b15.add(jp25);
panel5.add(b15); //adding jp15 and jp25 to panel5 in vertical box
//<--------coding for sixth tab--------->
JPanel panel6 = new JPanel();
tabbedPane.addTab("Related To Office",null,panel6,"sixth tab");
panel6.setLayout(new GridBagLayout());
//adding 4 labels and textfields vertically
JLabel l16=new JLabel("Investigation Officer");
gbc.gridx=0;
gbc.gridy=0;
gbc.insets=new Insets(40,40,20,10);
panel6.add(l16,gbc);
JTextField jtf16 =new JTextField(10);
gbc.gridx=1;
gbc.insets=new Insets(40,20,20,40);
panel6.add(jtf16,gbc);
JLabel l26=new JLabel("S.No.");
gbc.gridx=0;
gbc.gridy=1;
gbc.insets=new Insets(10,40,20,10);
panel6.add(l26,gbc);
JTextField jtf26 =new JTextField(10);
gbc.gridx=1;
gbc.insets=new Insets(10,20,20,40);
panel6.add(jtf26,gbc);
JLabel l36=new JLabel("Page No.");
gbc.gridx=0;
gbc.gridy=2;
gbc.insets=new Insets(10,40,20,10);
panel6.add(l36,gbc);
JTextField jtf36 =new JTextField(10);
gbc.gridx=1;
gbc.insets=new Insets(10,20,20,40);
panel6.add(jtf36,gbc);
JLabel l46=new JLabel("Date");
gbc.gridx=0;
gbc.gridy=3;
gbc.insets=new Insets(10,40,20,10);
panel6.add(l46,gbc);
JTextField jtf46=new JTextField(10);
gbc.gridx=1;
gbc.insets=new Insets(10,20,20,40);
panel6.add(jtf46,gbc);
/* Canvas c16=new Canvas(); //creating a rectangle frame for adding image
Image i16=c.createImage(200,100);
gbc.gridx=2;
gbc.gridy=0;
gbc.insets=new Insets(40,20,20,40);
gbc.gridheight=3;
panel6.add(i16,gbc);*/
JButton jb16=new JButton("Browse"); //adding "browse" and "save" buttons
gbc.insets=new Insets(10,20,20,40);
gbc.gridy=3;
panel6.add(jb16,gbc);
JButton jb26=new JButton("Save");
gbc.insets=new Insets(50,20,20,40);
gbc.gridy=4;
panel6.add(jb26,gbc);
//<-------end of sixth tab------->
add(tabbedPane);
//lower panel for cancel button
JPanel jp1=new JPanel();
jp1.setLayout(new FlowLayout(FlowLayout.RIGHT));
JButton can=new JButton("Cancel"); //initialising cancel button
jp1.add(can);
add(jp1,BorderLayout.SOUTH);
class Blistener implements ActionListener // class for action listener
public void actionPerformed(ActionEvent ae)
Object obj=ae.getSource();
try{
if(obj == can) //condition for cancel button
System.exit(0);
}catch(Exception e)
{System.out.println(e);
public class Project
public static void main(String args[]) //main method for the program
Design tabbedwin= new Design();
tabbedwin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
tabbedwin.setSize(900,700);
tabFirst things first. Next time please use the code formating tags when posting your code.
Secondly, we cant help you do your entire project or more specifically we cant do it for you. We can probably help you with one section at a time.
Thirdly, do not post your entire code. Create a Short, Self Contained, Compilable Example (SSCCE) that demonstrates the problem section, and that is independent of any third party libraries and can compiled instantly and tested.
Now, lets see if we can answer one problem here.
Ques 1. In the form I have one JComboBox of Country and other of State. Now I want it in such a way that whenI select a country from the Country JComboBox ,the corresponding states automatically appears in the State JComboBox.
Ans 1: Use an ItemListener or an ActionListener (javax.swing.event) for this. Once an item is selected, the event will be fired and then you populate your ComboBox with the requried data.
Ques 2. I need to add picture frame in the 6th tab so that the picture shows up when clicked browse and open.
Ans 2: You haven't created the JButton for the browse action, nor have you created the JLabel to show the picture in. Create the JButton, then the JLabel, attach an ActionListener to the button to listen for the button click, open a JFileChooser, select the image file, create an ImageIcon and pass the File object returned to it. Then call the JLabel.setIcon( the ImageIcon) to display the picture. You'll have to store the picture File information some where so can reference it when saving.
Ques 3.I need to add tables in 1st and 5th tab which shows up the details through database when added through several textboxes and combo boxes.
You need to do some reading. The Swing Tutorial has everything you need, from How to use Tables to How to connect to databases. There are also some examples in your JDK installation folder, ie, jdk/demos/jfc/tableExample. Here is the link to the swing tutorial on how to use Tables: http://java.sun.com/docs/books/tutorial/uiswing/components/table.html. You find other useful links there.
ICE -
Images in jar file, Please help!!
Hello,
This is my code, I am trying to add images to buttons in ToolBar. The code along with images works if I say "java ABC", but dont work(images dont appear) when I jar the files. I have tried all the possible methods, Please help me.
new2 = new JButton(new ImageIcon("images/new.gif"));
/*try{
ClassLoader loader=getClass().getClassLoader();
URL fileLocation=loader.getResource("./images/new.gif");
Image img=Toolkit.getDefaultToolkit().getImage(fileLocation);
new2 = new JButton(new ImageIcon(img));
}catch(Exception e) { e.printStackTrace(); }*/
//new2 = new JButton(new ImageIcon(ClassLoader.getSystemResource("images/new.gif")));
//new2 = new JButton(new ImageIcon(Toolkit.getDefaultToolkit().getImage(getClass().getResource("./images/new.gif"))));
//ImageIcon oo = new ImageIcon();
//new2 = new JButton(oo.setImage(getClass().getResource("images/new.gif")));
new2.setToolTipText("New");
Thanks
JamesHello,
The code is too big to post, I am adding the code that is required to get changed, please see it
open2 = new JButton(new ImageIcon("images/open.gif"));
open2.setToolTipText("Open");
open2.addActionListener(this);
open2.addMouseListener(new MouseAdapter()
public void mouseEntered(MouseEvent me)
status.setText("Opens a file");
public void mouseExited(MouseEvent me)
status.setText("open");
Thanks
James -
Please help me(How to allign an Image.)
I'm using
StyledDocument document = (StyledDocument) tp.getDocument();
Style imageStyle = document.addStyle("StyleName", null);
StyleConstants.setIcon(imageStyle,new ImageIcon("Images\\image1.gif")
document.insertString(document.getLength(), "ignored text",imageStyle);codes to append an image to JTextPane and
Style style = document.addStyle("StyleName", null);
StyleConstants.setForeground(style, new Color(r, g, b));
document.insertString(document.getLength(), appendMessage, style);
codes to append text to a JTextPane.
But when i append both images and texts ,Images are above the text.
Here I mean the bottom level of Images are at the same level of texes.
I want to make images below the texes
How can i do it?
If you can give me a little exampl
I think You can understand my requirement.
If it is difficult to understand tell me.
please help meI'm using
StyledDocument document = (StyledDocument) tp.getDocument();
Style imageStyle = document.addStyle("StyleName", null);
StyleConstants.setIcon(imageStyle,new ImageIcon("Images\\image1.gif")
document.insertString(document.getLength(), "ignored text",imageStyle);codes to append an image to JTextPane and
Style style = document.addStyle("StyleName", null);
StyleConstants.setForeground(style, new Color(r, g, b));
document.insertString(document.getLength(), appendMessage, style);
codes to append text to a JTextPane.
But when i append both images and texts ,Images are above the text.
Here I mean the bottom level of Images are at the same level of texes.
I want to make images below the texes
How can i do it?
If you can give me a little exampl
I think You can understand my requirement.
If it is difficult to understand tell me.
please help me -
PLEASE HELP ME with my Pacman maze!
I dont have much experience in Java. I have been trying to create a maze for my pacman game. I have displayed the code below.
The method paint() creates the maze based on the array. In the switch statement "case 0" creates the empty areas in the maze and "case 1" creates the walls.
My problem is how can I replace the walls with a single JPEG image of a brick that I have saved in the game's main directory. This image will replace all the squares in the walls, and will enhance the looks of the maze. I have tried different ways, but without success. Could you please point me in the right direction. PLEASE HELP ME.
Thank you in advance.
here is the code.
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Maze extends JFrame
static int board[][] = { {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1},
{1,0,1,1,0,1,1,1,0,1,0,1,1,1,0,1,1,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,1,1,0,1,0,1,1,1,1,1,0,1,0,1,1,0,1},
{1,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,1},
{1,1,1,1,0,1,1,1,0,1,0,1,1,1,0,1,1,1,1},
{1,0,0,1,0,1,0,0,0,0,0,0,0,1,0,1,0,0,1},
{1,1,1,1,0,1,0,1,1,0,1,1,0,1,0,1,1,1,1},
{0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0},
{1,1,1,1,0,1,0,1,1,1,1,1,0,1,0,1,1,1,1},
{1,0,0,1,0,1,0,0,0,0,0,0,0,1,0,1,0,0,1},
{1,1,1,1,0,1,1,1,0,1,0,1,1,1,0,1,1,1,1},
{1,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,1},
{1,0,1,1,0,1,0,1,1,1,1,1,0,1,0,1,1,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,1,1,0,1,1,1,0,1,0,1,1,1,0,1,1,0,1},
{1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1} };
int count1 = 0;
int count2 = 0;
int xbound = 25;
int ybound = 50;
public Maze()
super ("PacMan Maze");
setSize(800,800);
show();
public void paint (Graphics g)
for(count1=0; count1 < 19; count1++)
for(count2=0; count2 < 19; count2++)
switch (board[count1][count2])
case 0:
g.setColor(Color.blue);
g.fillRect(xbound,ybound,35,35);
break;
case 1:
g.setColor(Color.white);
g.fillRect(xbound,ybound,35,35);
g.setColor(Color.blue);
g.drawRect(xbound,ybound,35,35);
break;
xbound = xbound + 35;
ybound = ybound + 35;
xbound = 25;
public static void main (String args[])
Maze app = new Maze();
app.addWindowListener(
new WindowAdapter() {
public void windowClosing( WindowEvent e)
System.exit(0);
}I tried putting the following statements inside the switch statement (in case 1)
ImageIcon block = new ImageIcon("block.jpeg");
g.drawImage(block, xbound, ybound, this);
but I get this error:
cannot resolve symbol
symbol : method drawImage (javax.swing.ImageIcon,int,int,Maze)
location: class java.awt.Graphics
g.drawImage(block, 0, 0, this);
_^
1 error
Process completed.
can you please tell me what I am doing wrong
thanx -
HELP PLEASE HELP! urgent question with an easy answer!!!!
Hello;
I designed a JFrame game, that uses gif files as ImageIcons. The game works perfectly when I run it from console with the java.exe command.
However; now I want to create a wraparound and run the JFrame in the Internet Explorer from an applet. So I created a new file that extends JApplet; this new file creates a new object of the JFrame-game's class and show()'s it.
And I created an HTM file that runs the JApplet class. However, the internet explorer cannot open the applet because it has trouble loading the pictures (gif files). How can I load the pictures from my applet for my frame???
I dont want to change the Java security file. I just want to make the images accessible by my applet. I cannot use commands like setImage in my applet because my JFrame sets the Images.
(I repeat)My JApplet only invokes an object of my JFrame class and shows it.
PLEASE HELP PLEASE PLEASE..
Thanks..OK; let me tell you the whole thing. My pictures are in the same folder for sure.
My JFrame reads pictures and assigns JButtons pictures. when I run the frame there are 16 buttons with the same picture, and when I click the buttons there is a listener in the JFrame that changes the pictures. Simply put, the JFrame has no trouble finding and loading the pictures.
Then I created a JApplet as follows:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MemoryApplet extends JApplet
public void init ()
GameFrame ce = new GameFrame ();
ce.show ();
GameFrame is the name of the JFrame class. Then when I try to open the applet using IE, it gives the following error:
Exception: java.security.AccessControlException: (javax.io.FilePermission back.gif read)
back.gif is one of the gif files that are used in GameFrame -
Please help me it urgent....
hello everyone.
i have created a class which is extending from JWindow ,when it load I want to show dialog class which extends JDesktopPane to be loaded.I have added windowlistener to the window but it does not working.
here is the code that i have tried.please help me
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class demo extends JWindow implements WindowListener
int screenWidth = Toolkit.getDefaultToolkit().getScreenSize().width;
int screenHeight = Toolkit.getDefaultToolkit().getScreenSize().height;
JLabel lbl;
JButton btn;
public demo(JFrame f)
super(f);
JPanel pn = new JPanel();
pn.setBackground(new Color(0xF8F8F8));
lbl = new JLabel("Designed And Programmed By: Deepak Kumar Verma.");
lbl.setForeground(new Color(0x009595));
pn.add(lbl);
btn = new JButton("Submit");
pn.add(btn);
getContentPane().add(pn);
setSize(screenWidth,screenHeight);
setVisible(true);
addWindowListener(this);
public void windowOpened(WindowEvent e)
dialog d = new dialog();
d.setVisible(true);
public void windowClosing(WindowEvent e)
public void windowClosed(WindowEvent e)
public void windowIconified(WindowEvent e)
public void windowDeiconified(WindowEvent e)
public void windowActivated(WindowEvent e)
dialog d = new dialog();
Dimension dialogSize = d.getSize();
d.setLocation(screenWidth/2 - (dialogSize.width/2), screenHeight/2 - (dialogSize.height/2));
d.setVisible(true);
public void windowDeactivated(WindowEvent e)
public static void main(String args[])
JFrame f = new JFrame();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setUndecorated(true);
f.setSize(0,0);
f.setVisible(true);
demo d = new demo(f);
//code for dialog class
class dialog extends JDesktopPane
public dialog()
ImageIcon icon = new ImageIcon("C://Documents and Settings//maninder//My Documents//My Pictures//IconSecure.ico");
JInternalFrame iframe = new JInternalFrame("Welcome -- Maintainence Zone. ", true, true, true, true);
iframe.setFrameIcon(icon);
JPanel p = new JPanel();
p.setBackground(new Color(0xFFFFFF));
iframe.setSize(320,120);
iframe.setVisible(true);
iframe.getContentPane().add(p);
JLabel lbllogin = new JLabel("Login Id :");
p.add(lbllogin);
JTextField txtlogin = new JTextField(12);
p.add(txtlogin);
JLabel lblpwd = new JLabel("Password :");
p.add(lblpwd);
JPasswordField txtpwd = new JPasswordField(12);
p.add(txtpwd);
JButton btnsubmit = new JButton("submit");
p.add(btnsubmit);
JDesktopPane desktop = new JDesktopPane();
desktop.add(iframe);
getContentPane().add(desktop);
thanks in advanceSee my first comment in this posting:
http://forum.java.sun.com/thread.jspa?threadID=723670 -
Please, Please Help Me (.gif Images)
Hello,
I want to cry, I've been trying to include .gif images in my swing applications but am having big problems. I've been reading the forums and trying everything. If I try the most basic of examples just to get it working I still have problems. The code compiles correctly and the panels appear but no pics. I've tried including every different file path version, moving .gifs to different folders, what is the problem, why no pics. I'm running J2SE v 1.4.1_02, please help, I would be so greatful, don't make me cry,
Lucy
import java.awt.*;
import javax.swing.*;
public class JFrameImage extends JFrame
public JFrameImage()
Container c = getContentPane();
JPanel panel = new JPanel()
public void paintComponent(Graphics g)
ImageIcon img = new ImageIcon("globe.gif");
g.drawImage(img.getImage(), 0, 0, null);
super.paintComponent(g);
panel.setOpaque(false);
ImageIcon icon = new ImageIcon("cat.gif");
JButton button = new JButton(icon);
panel.add(button);
c.add(panel);
public static void main(String[] args)
JFrameImage frame = new JFrameImage();
Image onFrame = Toolkit.getDefaultToolkit().getImage("icon.gif") ;
frame.setIconImage(onFrame);
frame.setSize(200,200);
frame.setLocation(300,200);
frame.setDefaultCloseOperation( EXIT_ON_CLOSE );
frame.setVisible(true);sorry but I think it should be something else.
To locate a File you need it's full name, including the extension. Maybe since the extension wasn't showing it's actual filename was cat.gif.gif? I don't know. Anyway, this is a method I use for all my image retrieving, just put it in some Util-class: private static HashMap hmImages = new HashMap();
public static ImageIcon getImage (String name)
if (hmImages.containsKey(name))
return (ImageIcon) hmImages.get(name);
String url = System.getProperty("user.dir") + "/resources/" + name;//or any other directory were all your image-files are under (even in subs, in that case add the subdirectory to the arg name
try
ImageIcon ic = new ImageIcon (url);
if (ic != null)
hmImages.put(name, ic);
return ic;
catch (Exception e)
System.out.println("Warning: image '" + url + "' not found");
return null;
}greetz,
Stijn -
Please help !
Is it possible to change a default minimize icon in JInternalFrame to a custom icon (ImageIcon) without using UIManager...Hi, if you want to set it to another icon other than the default one, use setFrameIcon() method in JInternalFrame.
Thanks,
Kalyan -
Converting application to applet.... please Help
This program shown works fine in appletveiwer however will not work with I.E. nor Netscape. I do have the java plugins for both and using a netscape version over 6.0. I made the program usint jdk1.3. Can anyone please help me out?
java code
// TabbedPaneFlags.java: Use tabbed pane to select figures
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class TabbedPaneFlags extends javax.swing.JApplet
// Create a tabbed pane to hold figure panels
private JTabbedPane jtpFigures = new JTabbedPane();
// Load Images
private JLabel lblUSA = new JLabel(new ImageIcon("USA.gif"));
private JLabel lblUK = new JLabel(new ImageIcon("uk.gif"));
private JLabel lblGER = new JLabel(new ImageIcon("germany.gif"));
private JLabel lblCAN = new JLabel(new ImageIcon("canada.gif"));
private JLabel lblCHI = new JLabel(new ImageIcon("china.gif"));
private JLabel lblIND = new JLabel(new ImageIcon("india.gif"));
// Main method
//public static void main(String[] args)
// TabbedPaneFlags frame = new TabbedPaneFlags();
// frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// frame.setSize(450, 350);
// frame.setVisible(true);
// Constructor
// public TabbedPaneFlags()
public void init()
// setTitle("Tabbed Pane Demo");
jtpFigures.add(lblUSA,"USA");
jtpFigures.add(lblUK,"UK");
jtpFigures.add(lblGER,"Germany");
jtpFigures.add(lblCAN,"Canada");
jtpFigures.add(lblCHI,"China");
jtpFigures.add(lblIND,"India");
// Place tabbed pane
this.getContentPane().add(jtpFigures, BorderLayout.CENTER);
html code
<html>
<head>
<title>AppletMenuDemo</title>
</head>
<body>
<applet
code = "TabbedPaneFlags.class"
width = 450
height = 350
alt="You must have a JDK 1.2-enabled browser to view the applet">
</applet>
</body>
</html>You should try the html converter so that the browsers are forced to invoke their plugin... or prompt the user to download one.
To turn an applet into an application is easy. You act like the browser. You make a frame, construct the applet, and put the applet in the frame, (They are components) ... Then just call the init() method. Then add a window listener to call the stop() method when the frame gets closed.
Application to an applet is a bit harder. You need to figure out what needs to be in the init method. Depending on what the application does you can also run into security issues. -
Please Please Help with Projectile Project Here are the Codes
I've got three(3) classes a Model, a view, and a controller.
This is a project about projectiles.it is an animation of a cannonball being fired from a cannon and travelling under the effect of gravity.A cannon fired at angle 'a' to the horizontal and with an initial speed 's', will have an initial velocity given by:
vx := s * cos(a);//velocity x equals the speed multiply by the cosine of angle a.
vy := s * sin(a);//velocity y equals the speed multiply by the sine of angle a.
Here are the code.
Model:
/** Cannon specifies the expected behaviour of a cannon*/
public class Cannon{
public static final int TICK = 60;
private int velocity = 0;
private static final double gravity = .098f;
private double angle = 0;
// distances & positions are meausred in pixels
private int x_pos; // ball's center x-position
private int y_pos; // ball's center y-position
// speed is measured in pixels per `tick'
private int x_velocity; // horizonal speed; positive is to the right
private int y_velocity; // vertical speed; positive is downwards
public Cannon() {
velocity = 3;
angle = 60;
angle = radians(angle);
x_pos = 0;
y_pos = 385;
/** shoot fires a shot from the cannon*/
public void shoot(){
move();
/**reload reloads the cannon with more shorts*/
public void reload() {
/** changeAngle changes the angle of the canon
* @params value - the amount to add or subtract from the current angle value*/
public void changeAngle(double value) {
angle = (double)value;
angle = radians(angle);
/** getAngle returns the current angle value of the cannon*/
public double getAngle() {
return angle;
/** changeVelocity changes the speed at which a cannon ball that is to be fire will travel at
* @params value - the new speed at which the user wants a cannon ball to travel at.*/
public void changeVelocityX(int value){
x_velocity = x_velocity * (int)Math.cos(value);
public void changeVelocityY(int value){
y_velocity = y_velocity * (int)Math.sin(value);
/** getVelocity returns the current velocity value of the cannon*/
public int getVelocityX() {
return x_velocity;
public int getVelocityY() {
return y_velocity;
/** getGravity returns the current gravity value of the cannon*/
public double getGravity() {
return gravity;
public int xPosition(){
return x_pos;
public int yPosition(){
return y_pos;
public void move(){
double dx = getVelocityX() * Math.cos(getAngle());
double dy = getVelocityY() * Math.sin(getAngle());
x_pos+=dx;
y_pos-=dy;
double radians (double angle){
return ((Math.PI * angle) / 180.0);
View:
import java.awt.*;
import javax.swing.*;
/** CannonView displays a cannon being fired.*/
public class CannonView extends JPanel{
/** DISPLAY_SIZE specifies the overall display area of the cannon and the bucket.*/
public static final int DISPLAY_AREA_SIZE = 600;
public RotatablePolygon rectangle;
public RotatablePolygon triangle;
public Cannon cannon;
public CannonView(Cannon c) {
this.setPreferredSize(new Dimension(600,450));
this.setBackground(Color.black);
cannon = c;
int xRectangle[] = {0,0,40,40,0};
int yRectangle[] = {400,300,300,400,400};
int xTriangle[] = {0,20,40,0};
int yTriangle[] = {300,280,300,300};
rectangle = new RotatablePolygon (xRectangle, yRectangle, 5,20,350);
// rectangle.setPosition (100, 100);
// triangle = new RotatablePolygon (xTriangle, yTriangle, 4,0,290);
triangle = new RotatablePolygon (xTriangle, yTriangle, 4,20,350);
//triangle.setPosition (100, 100);
JFrame frame = new JFrame();
frame.getContentPane().add(this);
frame.pack();
frame.setVisible(true);
frame.setTitle("Width = " + frame.getWidth() + " , Height = " + frame.getHeight());
/** drawBucket draws a bucket/target for which a moving cannon ball should hit.
* @param g - the graphics pen for which the drawing should occur.*/
public void drawBucket(Graphics g) {
g.setColor(Color.red);
int xvalues[] = {495, 519, 575, 595, 495};
int yvalues[] = {340, 400, 400, 340, 340};
Polygon poly1 = new Polygon (xvalues, yvalues, 5);
g.fillPolygon(poly1);
g.setColor(Color.white);
g.fillOval(495, 328, 100, 24);
Graphics2D g2d = (Graphics2D)g;
g2d.setStroke(new BasicStroke(2));
g.setColor(Color.red);
g.drawOval(495, 328, 100, 24);
g.drawOval(495,311,100,54);
/** drawCannon draws a cannon
* @param g - the graphics pen that will be used to draw the cannon.*/
public void drawCannon(Graphics g) {
Graphics2D g2 = (Graphics2D)g;
g.setColor(Color.red);
g2.fill(rectangle);
g.setColor(Color.orange);
g2.fill(triangle);
g.setColor(Color.blue);
g.fillOval(95, 340, 60, 60);
g.setColor(Color.magenta);
for (int i = 0; i < 6; i++){
g.fillArc(95, 340, 60, 60, i* 60, 30);
g.setColor(Color.black);
g.fillOval(117, 362, 16, 16);
/** drawCannonShots will draw the actual number of shots already used by the cannon
* @param g - the graphics pen that will be used to draw the shots of the cannon.*/
public void drawCannonShots(Graphics g) {
g.setColor(Color.orange);
g.fillOval(cannon.xPosition(),cannon.yPosition(),16,16);
/** drawTrail will draw a trail of smoke to indicate where a cannon ball has passed
* @param g - the graphics pen used to draw the trail.*/
public void drawTrail(Graphics g){}
/**drawGround draws the ground for which the cannon sits*/
public void drawGround(Graphics g) {
g.setColor(Color.green.brighter());
g.fillRect(0,400,600,50);
/** drawMovingCannonBall draw a cannon ball moving at a certain speed (velocity),
* with a certain amount of gravitational acting upon it, at a certain angle.
* @params g - the graphics pen used to draw the moving cannon ball.
* @params gravity - the value of gravity.
* @params velocity - the speed at which the ball is travelling.
* @params angle - the angle at which the ball was shot from.*/
public void drawMovingCannonBall(Graphics g, double gravity, double velocity, double angle){}
/** paintComponent paints the cannon,bucket
* @param g - graphics pen.*/
public void paintComponent(Graphics g) {
super.paintComponent(g);
drawGround(g);
drawBucket(g);
drawCannon(g);
drawCannonShots(g);
Controller
/** CannonController controls the interaction between the user and a cannon*/
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class CannonController extends JFrame{
public JMenuBar jMenuBar2;
public JMenu jMenu2;
public JMenuItem jMenuItem1;
public JMenu jMenu3;
public JMenuItem jMenuItem2;
public JLabel angleLabel, velocityLabel;
public JTextField angleTextField, velocityTextField;
public JButton fireButton, reloadButton;
public JSlider angleSlider, velocitySlider;
private CannonView view;
private Cannon cannon;
int oldValue, newValue;
public CannonController(Cannon acannon) {
cannon = acannon;
view = new CannonView(cannon);
loadControls();
angleTextField.setText(String.valueOf(angleSlider.getValue()));
oldValue = angleSlider.getValue();
newValue = oldValue + 1;
velocityTextField.setText(String.valueOf(velocitySlider.getValue()));
this.setSize(328,308);
this.setLocation(view.getWidth()-this.getWidth(),0);
/** loadControl loads all of the GUI controls that a
* user of the cannon animation will use to interact with the program*/
public void loadControls() {
jMenuBar2 = new JMenuBar();
jMenu2 = new JMenu();
jMenuItem1 = new JMenuItem();
jMenu3 = new JMenu();
jMenuItem2 = new JMenuItem();
angleLabel = new JLabel();
velocityLabel = new JLabel();
angleTextField = new JTextField();
velocityTextField = new JTextField();
fireButton = new JButton();
reloadButton = new JButton();
angleSlider = new JSlider();
velocitySlider = new JSlider();
jMenuBar2.setBorderPainted(false);
jMenu2.setModel(jMenu2.getModel());
jMenu2.setText("File");
jMenuItem1.setText("Exit");
jMenuItem1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
jMenuItem1ActionPerformed(evt);
jMenu2.add(jMenuItem1);
jMenuBar2.add(jMenu2);
jMenu3.setText("Help");
jMenuItem2.setText("About this Program");
jMenuItem2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
jMenuItem2ActionPerformed(evt);
jMenu3.add(jMenuItem2);
jMenuBar2.add(jMenu3);
getContentPane().setLayout(null);
setTitle("Cannon Controller Form");
setResizable(false);
setMenuBar(getMenuBar());
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) {
exitForm(evt);
angleLabel.setText("Angle:");
getContentPane().add(angleLabel);
angleLabel.setLocation(10, 20);
angleLabel.setSize(angleLabel.getPreferredSize());
velocityLabel.setText("Velocity:");
getContentPane().add(velocityLabel);
velocityLabel.setLocation(10, 80);
velocityLabel.setSize(velocityLabel.getPreferredSize());
angleTextField.setToolTipText("Only numeric values are allow");
getContentPane().add(angleTextField);
angleTextField.setBounds(280, 20, 30, 20);
velocityTextField.setToolTipText("Only numeric values are allow");
getContentPane().add(velocityTextField);
velocityTextField.setBounds(280, 80, 30, 20);
fireButton.setToolTipText("Click to fire a shot");
fireButton.setText("Fire");
fireButton.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent evt) {
fireButtonMouseClicked(evt);
getContentPane().add(fireButton);
fireButton.setBounds(60, 160, 80, 30);
reloadButton.setToolTipText("Click to reload cannon");
reloadButton.setText("Reload");
reloadButton.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent evt) {
reloadButtonMouseClicked(evt);
getContentPane().add(reloadButton);
reloadButton.setBounds(150, 160, 80, 30);
angleSlider.setMinorTickSpacing(30);
angleSlider.setPaintLabels(true);
angleSlider.setPaintTicks(true);
angleSlider.setMinimum(0);
angleSlider.setMajorTickSpacing(60);
angleSlider.setToolTipText("Change the cannon angle");
angleSlider.setMaximum(360);
angleSlider.setValue(0);
angleSlider.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent evt) {
angleSliderStateChanged(evt);
getContentPane().add(angleSlider);
angleSlider.setBounds(60, 20, 210, 40);
velocitySlider.setMinorTickSpacing(5);
velocitySlider.setPaintLabels(true);
velocitySlider.setPaintTicks(true);
velocitySlider.setMinimum(1);
velocitySlider.setMajorTickSpacing(10);
velocitySlider.setToolTipText("Change the speed of the cannon ball");
velocitySlider.setMaximum(28);
velocitySlider.setValue(3);
velocitySlider.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent evt) {
velocitySliderStateChanged(evt);
getContentPane().add(velocitySlider);
velocitySlider.setBounds(60, 80, 210, 50);
setJMenuBar(jMenuBar2);
pack();
private void reloadButtonMouseClicked(MouseEvent evt) {
reloadButtonClick();
private void fireButtonMouseClicked(MouseEvent evt) {
fireButtonClick();
/** firstButtonClick is the event handler that sends a message
* to the cannon class to invokes the cannon's fire method*/
public void fireButtonClick() {
// JOptionPane.showMessageDialog(null,"You click Fire");
cannon.shoot();
view.repaint();
/** reloadButtonClick is the event handler that sends a message
* to the cannon class to invokes the cannon's reload method*/
public void reloadButtonClick() {
JOptionPane.showMessageDialog(null,"reload");
private void angleSliderStateChanged(ChangeEvent evt) {
angleTextField.setText(String.valueOf(angleSlider.getValue()));
view.rectangle.setAngle(angleSlider.getValue() * (Math.PI / 180));
view.triangle.setAngle(angleSlider.getValue() * (Math.PI / 180));
cannon.changeAngle(angleSlider.getValue());
view.repaint();
private void velocitySliderStateChanged(ChangeEvent evt) {
velocityTextField.setText(String.valueOf(velocitySlider.getValue()));
cannon.changeVelocityX(velocitySlider.getValue());
private void gravitySliderStateChanged(ChangeEvent evt) {
private void jMenuItem1ActionPerformed(ActionEvent evt) {
System.exit (0);
private void jMenuItem2ActionPerformed(ActionEvent evt) {
String message = "Cannon Animation\n"+
"Based on the Logic of Projectiles";
JOptionPane.showMessageDialog(null,message,"About this program",JOptionPane.PLAIN_MESSAGE);
/** Exit the Application */
private void exitForm(WindowEvent evt) {
System.exit (0);
/** Pause execution for t milliseconds. */
private void delay (int t) {
try {
Thread.sleep (t);
} catch (InterruptedException e) {}
public static void main(String [] args){
Cannon cn = new Cannon();
CannonController control = new CannonController(cn);
control.setTitle("Test");
control.setVisible(true);
if the cannon ball land in the bucket it should stop and the animation should indicate a 'hit' in some way. maybe by displaying a message.
if the cannonball hits the outside of the bucket it should bounce off.
Extra Notes.
1) The acceleration due to gravity is 9.8m/s to the (power of (2) eg s2.
2) The distance travelled in time t by a body with initial velocity v under constant acceleration a is:
v * t + a * t.pow(2) div 2;
The velocity at the end of time t will be v + a * t.
Distance is measure in pixels rather than meter so for simplicity we use 1 pixel per meter
When i pressed the fire button nothings happens. I'm going crazy. Please please help!Here is the interface specification for the RotatablePolygon class. I do not have the actual .java source.
Thanks
Class RotatablePolygon
java.lang.Object
|
--java.awt.geom.Area
|
--RotatablePolygon
All Implemented Interfaces:
java.lang.Cloneable, java.awt.Shape
public class RotatablePolygon
extends java.awt.geom.Area
Polygons which can be rotated around an `anchor' point and also translated (moved in the x and y directions).
Constructor Summary
RotatablePolygon(int[] xs, int[] ys, int n, double x, double y)
Create a new RotatablePolyogon with given vertices and anchor point (x,y).
Method Summary
double getAngle()
The current angle of rotation.
double getXanchor()
x-coordinate of the anchor point.
double getYanchor()
y-coordinate of the anchor point.
void rotate(double da)
Rotate the polygon from its current position by angle da (in radians) around the anchor.
void rotateDegrees(double da)
Rotate the polygon from its current position by angle da (in degrees) around the anchor.
void setAngle(double a)
Set the angle of rotation of the polygon to be angle a (in radians) around the anchor.
void setAngleDegrees(double a)
Set the angle of rotation of the polygon to be angle a (in degrees) around the anchor.
void setPosition(double x, double y)
Shift the polygon's position to put its anchor point at (x,y).
void translate(double dx, double dy)
Shift the polygon's position and anchor point by given amounts.
Methods inherited from class java.awt.geom.Area
add, clone, contains, contains, contains, contains, createTransformedArea, equals, exclusiveOr, getBounds, getBounds2D, getPathIterator, getPathIterator, intersect, intersects, intersects, isEmpty, isPolygonal, isRectangular, isSingular, reset, subtract, transform
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Constructor Detail
RotatablePolygon
public RotatablePolygon(int[] xs,
int[] ys,
int n,
double x,
double y)
Create a new RotatablePolyogon with given vertices and anchor point (x,y).
REQUIRE: xs.length >= n && ys.length >= n
Parameters:
xs - x-coordinates of vertices
ys - y-coordinates of vertices
n - number of vertices
x - x-coordinate of the rotation anchor
y - y-coordinate of the rotation anchor
Method Detail
setPosition
public void setPosition(double x,
double y)
Shift the polygon's position to put its anchor point at (x,y).
Parameters:
x - new x-coordinate for anchor point
y - new y-coordinate for anchor point
translate
public void translate(double dx,
double dy)
Shift the polygon's position and anchor point by given amounts.
Parameters:
dx - amount to shift by in x-direction
dy - amount to shift by in y-direction
setAngle
public void setAngle(double a)
Set the angle of rotation of the polygon to be angle a (in radians) around the anchor.
Parameters:
a - angle to rotate to, in radians
setAngleDegrees
public void setAngleDegrees(double a)
Set the angle of rotation of the polygon to be angle a (in degrees) around the anchor.
Parameters:
a - angle to rotate to, in degrees
rotate
public void rotate(double da)
Rotate the polygon from its current position by angle da (in radians) around the anchor.
Parameters:
da - angle to rotate by, in radians
rotateDegrees
public void rotateDegrees(double da)
Rotate the polygon from its current position by angle da (in degrees) around the anchor.
Parameters:
da - angle to rotate by, in degrees
getAngle
public double getAngle()
The current angle of rotation.
getXanchor
public double getXanchor()
x-coordinate of the anchor point.
getYanchor
public double getYanchor()
y-coordinate of the anchor point. -
Please Help with Physics Project Here are the codings
I've got three(3) classes a Model, a view, and a controller.
This is a project about projectiles.it is an animation of a cannonball being fired from a cannon and travelling under the effect of gravity.A cannon fired at angle 'a' to the horizontal and with an initial speed 's', will have an initial velocity given by:
vx := s * cos(a);//velocity x equals the speed multiply by the cosine of angle a.
vy := s * sin(a);//velocity y equals the speed multiply by the sine of angle a.
Here are the code.
Model:
/** Cannon specifies the expected behaviour of a cannon*/
public class Cannon{
public static final int TICK = 60;
private int velocity = 0;
private static final double gravity = .098f;
private double angle = 0;
// distances & positions are meausred in pixels
private int x_pos; // ball's center x-position
private int y_pos; // ball's center y-position
// speed is measured in pixels per `tick'
private int x_velocity; // horizonal speed; positive is to the right
private int y_velocity; // vertical speed; positive is downwards
public Cannon() {
velocity = 3;
angle = 60;
angle = radians(angle);
x_pos = 0;
y_pos = 385;
/** shoot fires a shot from the cannon*/
public void shoot(){
move();
/**reload reloads the cannon with more shorts*/
public void reload() {
/** changeAngle changes the angle of the canon
* @params value - the amount to add or subtract from the current angle value*/
public void changeAngle(double value) {
angle = (double)value;
angle = radians(angle);
/** getAngle returns the current angle value of the cannon*/
public double getAngle() {
return angle;
/** changeVelocity changes the speed at which a cannon ball that is to be fire will travel at
* @params value - the new speed at which the user wants a cannon ball to travel at.*/
public void changeVelocityX(int value){
x_velocity = x_velocity * (int)Math.cos(value);
public void changeVelocityY(int value){
y_velocity = y_velocity * (int)Math.sin(value);
/** getVelocity returns the current velocity value of the cannon*/
public int getVelocityX() {
return x_velocity;
public int getVelocityY() {
return y_velocity;
/** getGravity returns the current gravity value of the cannon*/
public double getGravity() {
return gravity;
public int xPosition(){
return x_pos;
public int yPosition(){
return y_pos;
public void move(){
double dx = getVelocityX() * Math.cos(getAngle());
double dy = getVelocityY() * Math.sin(getAngle());
x_pos+=dx;
y_pos-=dy;
double radians (double angle){
return ((Math.PI * angle) / 180.0);
View:
import java.awt.*;
import javax.swing.*;
/** CannonView displays a cannon being fired.*/
public class CannonView extends JPanel{
/** DISPLAY_SIZE specifies the overall display area of the cannon and the bucket.*/
public static final int DISPLAY_AREA_SIZE = 600;
public RotatablePolygon rectangle;
public RotatablePolygon triangle;
public Cannon cannon;
public CannonView(Cannon c) {
this.setPreferredSize(new Dimension(600,450));
this.setBackground(Color.black);
cannon = c;
int xRectangle[] = {0,0,40,40,0};
int yRectangle[] = {400,300,300,400,400};
int xTriangle[] = {0,20,40,0};
int yTriangle[] = {300,280,300,300};
rectangle = new RotatablePolygon (xRectangle, yRectangle, 5,20,350);
// rectangle.setPosition (100, 100);
// triangle = new RotatablePolygon (xTriangle, yTriangle, 4,0,290);
triangle = new RotatablePolygon (xTriangle, yTriangle, 4,20,350);
//triangle.setPosition (100, 100);
JFrame frame = new JFrame();
frame.getContentPane().add(this);
frame.pack();
frame.setVisible(true);
frame.setTitle("Width = " + frame.getWidth() + " , Height = " + frame.getHeight());
/** drawBucket draws a bucket/target for which a moving cannon ball should hit.
* @param g - the graphics pen for which the drawing should occur.*/
public void drawBucket(Graphics g) {
g.setColor(Color.red);
int xvalues[] = {495, 519, 575, 595, 495};
int yvalues[] = {340, 400, 400, 340, 340};
Polygon poly1 = new Polygon (xvalues, yvalues, 5);
g.fillPolygon(poly1);
g.setColor(Color.white);
g.fillOval(495, 328, 100, 24);
Graphics2D g2d = (Graphics2D)g;
g2d.setStroke(new BasicStroke(2));
g.setColor(Color.red);
g.drawOval(495, 328, 100, 24);
g.drawOval(495,311,100,54);
/** drawCannon draws a cannon
* @param g - the graphics pen that will be used to draw the cannon.*/
public void drawCannon(Graphics g) {
Graphics2D g2 = (Graphics2D)g;
g.setColor(Color.red);
g2.fill(rectangle);
g.setColor(Color.orange);
g2.fill(triangle);
g.setColor(Color.blue);
g.fillOval(95, 340, 60, 60);
g.setColor(Color.magenta);
for (int i = 0; i < 6; i++){
g.fillArc(95, 340, 60, 60, i* 60, 30);
g.setColor(Color.black);
g.fillOval(117, 362, 16, 16);
/** drawCannonShots will draw the actual number of shots already used by the cannon
* @param g - the graphics pen that will be used to draw the shots of the cannon.*/
public void drawCannonShots(Graphics g) {
g.setColor(Color.orange);
g.fillOval(cannon.xPosition(),cannon.yPosition(),16,16);
/** drawTrail will draw a trail of smoke to indicate where a cannon ball has passed
* @param g - the graphics pen used to draw the trail.*/
public void drawTrail(Graphics g){}
/**drawGround draws the ground for which the cannon sits*/
public void drawGround(Graphics g) {
g.setColor(Color.green.brighter());
g.fillRect(0,400,600,50);
/** drawMovingCannonBall draw a cannon ball moving at a certain speed (velocity),
* with a certain amount of gravitational acting upon it, at a certain angle.
* @params g - the graphics pen used to draw the moving cannon ball.
* @params gravity - the value of gravity.
* @params velocity - the speed at which the ball is travelling.
* @params angle - the angle at which the ball was shot from.*/
public void drawMovingCannonBall(Graphics g, double gravity, double velocity, double angle){}
/** paintComponent paints the cannon,bucket
* @param g - graphics pen.*/
public void paintComponent(Graphics g) {
super.paintComponent(g);
drawGround(g);
drawBucket(g);
drawCannon(g);
drawCannonShots(g);
Controller
/** CannonController controls the interaction between the user and a cannon*/
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class CannonController extends JFrame{
public JMenuBar jMenuBar2;
public JMenu jMenu2;
public JMenuItem jMenuItem1;
public JMenu jMenu3;
public JMenuItem jMenuItem2;
public JLabel angleLabel, velocityLabel;
public JTextField angleTextField, velocityTextField;
public JButton fireButton, reloadButton;
public JSlider angleSlider, velocitySlider;
private CannonView view;
private Cannon cannon;
int oldValue, newValue;
public CannonController(Cannon acannon) {
cannon = acannon;
view = new CannonView(cannon);
loadControls();
angleTextField.setText(String.valueOf(angleSlider.getValue()));
oldValue = angleSlider.getValue();
newValue = oldValue + 1;
velocityTextField.setText(String.valueOf(velocitySlider.getValue()));
this.setSize(328,308);
this.setLocation(view.getWidth()-this.getWidth(),0);
/** loadControl loads all of the GUI controls that a
* user of the cannon animation will use to interact with the program*/
public void loadControls() {
jMenuBar2 = new JMenuBar();
jMenu2 = new JMenu();
jMenuItem1 = new JMenuItem();
jMenu3 = new JMenu();
jMenuItem2 = new JMenuItem();
angleLabel = new JLabel();
velocityLabel = new JLabel();
angleTextField = new JTextField();
velocityTextField = new JTextField();
fireButton = new JButton();
reloadButton = new JButton();
angleSlider = new JSlider();
velocitySlider = new JSlider();
jMenuBar2.setBorderPainted(false);
jMenu2.setModel(jMenu2.getModel());
jMenu2.setText("File");
jMenuItem1.setText("Exit");
jMenuItem1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
jMenuItem1ActionPerformed(evt);
jMenu2.add(jMenuItem1);
jMenuBar2.add(jMenu2);
jMenu3.setText("Help");
jMenuItem2.setText("About this Program");
jMenuItem2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
jMenuItem2ActionPerformed(evt);
jMenu3.add(jMenuItem2);
jMenuBar2.add(jMenu3);
getContentPane().setLayout(null);
setTitle("Cannon Controller Form");
setResizable(false);
setMenuBar(getMenuBar());
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) {
exitForm(evt);
angleLabel.setText("Angle:");
getContentPane().add(angleLabel);
angleLabel.setLocation(10, 20);
angleLabel.setSize(angleLabel.getPreferredSize());
velocityLabel.setText("Velocity:");
getContentPane().add(velocityLabel);
velocityLabel.setLocation(10, 80);
velocityLabel.setSize(velocityLabel.getPreferredSize());
angleTextField.setToolTipText("Only numeric values are allow");
getContentPane().add(angleTextField);
angleTextField.setBounds(280, 20, 30, 20);
velocityTextField.setToolTipText("Only numeric values are allow");
getContentPane().add(velocityTextField);
velocityTextField.setBounds(280, 80, 30, 20);
fireButton.setToolTipText("Click to fire a shot");
fireButton.setText("Fire");
fireButton.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent evt) {
fireButtonMouseClicked(evt);
getContentPane().add(fireButton);
fireButton.setBounds(60, 160, 80, 30);
reloadButton.setToolTipText("Click to reload cannon");
reloadButton.setText("Reload");
reloadButton.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent evt) {
reloadButtonMouseClicked(evt);
getContentPane().add(reloadButton);
reloadButton.setBounds(150, 160, 80, 30);
angleSlider.setMinorTickSpacing(30);
angleSlider.setPaintLabels(true);
angleSlider.setPaintTicks(true);
angleSlider.setMinimum(0);
angleSlider.setMajorTickSpacing(60);
angleSlider.setToolTipText("Change the cannon angle");
angleSlider.setMaximum(360);
angleSlider.setValue(0);
angleSlider.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent evt) {
angleSliderStateChanged(evt);
getContentPane().add(angleSlider);
angleSlider.setBounds(60, 20, 210, 40);
velocitySlider.setMinorTickSpacing(5);
velocitySlider.setPaintLabels(true);
velocitySlider.setPaintTicks(true);
velocitySlider.setMinimum(1);
velocitySlider.setMajorTickSpacing(10);
velocitySlider.setToolTipText("Change the speed of the cannon ball");
velocitySlider.setMaximum(28);
velocitySlider.setValue(3);
velocitySlider.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent evt) {
velocitySliderStateChanged(evt);
getContentPane().add(velocitySlider);
velocitySlider.setBounds(60, 80, 210, 50);
setJMenuBar(jMenuBar2);
pack();
private void reloadButtonMouseClicked(MouseEvent evt) {
reloadButtonClick();
private void fireButtonMouseClicked(MouseEvent evt) {
fireButtonClick();
/** firstButtonClick is the event handler that sends a message
* to the cannon class to invokes the cannon's fire method*/
public void fireButtonClick() {
// JOptionPane.showMessageDialog(null,"You click Fire");
cannon.shoot();
view.repaint();
/** reloadButtonClick is the event handler that sends a message
* to the cannon class to invokes the cannon's reload method*/
public void reloadButtonClick() {
JOptionPane.showMessageDialog(null,"reload");
private void angleSliderStateChanged(ChangeEvent evt) {
angleTextField.setText(String.valueOf(angleSlider.getValue()));
view.rectangle.setAngle(angleSlider.getValue() * (Math.PI / 180));
view.triangle.setAngle(angleSlider.getValue() * (Math.PI / 180));
cannon.changeAngle(angleSlider.getValue());
view.repaint();
private void velocitySliderStateChanged(ChangeEvent evt) {
velocityTextField.setText(String.valueOf(velocitySlider.getValue()));
cannon.changeVelocityX(velocitySlider.getValue());
private void gravitySliderStateChanged(ChangeEvent evt) {
private void jMenuItem1ActionPerformed(ActionEvent evt) {
System.exit (0);
private void jMenuItem2ActionPerformed(ActionEvent evt) {
String message = "Cannon Animation\n"+
"Based on the Logic of Projectiles";
JOptionPane.showMessageDialog(null,message,"About this program",JOptionPane.PLAIN_MESSAGE);
/** Exit the Application */
private void exitForm(WindowEvent evt) {
System.exit (0);
/** Pause execution for t milliseconds. */
private void delay (int t) {
try {
Thread.sleep (t);
} catch (InterruptedException e) {}
public static void main(String [] args){
Cannon cn = new Cannon();
CannonController control = new CannonController(cn);
control.setTitle("Test");
control.setVisible(true);
if the cannon ball land in the bucket it should stop and the animation should indicate a 'hit' in some way. maybe by displaying a message.
if the cannonball hits the outside of the bucket it should bounce off.
Extra Notes.
1) The acceleration due to gravity is 9.8m/s to the (power of (2) eg s2.
2) The distance travelled in time t by a body with initial velocity v under constant acceleration a is:
v * t + a * t.pow(2) div 2;
The velocity at the end of time t will be v + a * t.
Distance is measure in pixels rather than meter so for simplicity we use 1 pixel per meter
When i pressed the fire button nothings happens. I'm going crazy. Please please help!Hi,
U put something on forum and keeping silence.If it is not necessary dont put in forum.I moved your cannon ball.If u want continous movement I need some more information.
Johnson -
Please help - JFrame, menu, another JFrame, setBackground
I am trying to make a simple program that draws a JFrame with a menu. The menu has one item, which when selected draws another JFrame. That JFrame has a button, which when pressed changes the background color. Many hours have gone into this, despite the fact that I made a similar program a few weeks ago.
The compiler complains about the method getContentPane, when I remove that, it runs and draws the first window, but the menu item does not make the second window. Also, the setDefaultCloseOperation confuses the compiler as well.
Please help.
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class MenuAction2
public static void main(String[] args)
MainWindow window = new MainWindow("Menu action example");
//window.setDefaultCloseOperation.(JFrame.EXIT_ON_CLOSE);
window.setVisible(true);
class MainWindow extends JFrame
MainWindow(String title)
super(title);
getContentPane.setLayout(new BorderLayout());
Toolkit theKit = getToolkit();
Dimension wndSize = theKit.getScreenSize();
setBounds(0, 0,wndSize.width, wndSize.height);
setJMenuBar(menuBar);
fileMenu = new JMenu("File");
connectItem = new JMenuItem();
connectItem = fileMenu.add("Connect...");
connectItem.addActionListener(menuHandler = new Handler());
menuBar.add(fileMenu);
getContentPane.add(toolBar, BorderLayout.NORTH);
class Handler implements ActionListener
public void actionPerformed(ActionEvent e)
win = new ConnectWindow("Connect to Database");
getContentPane().add(win, BorderLayout.NORTH);
setVisible(true);
private JMenu fileMenu;
private JMenuItem connectItem;
private JMenuBar menuBar = new JMenuBar();
private JToolBar toolBar = new JToolBar();
private Handler menuHandler;
private ConnectWindow win;
class ConnectWindow extends JFrame
ConnectWindow(String title)
super(title);
setSize(200,200);
setLayout(new BorderLayout());
JButton connectB = new JButton("Connect");
connectB.addActionListener(new ActionListener()
public void actionPerformed(ActionEvent e)
setBackground(Color.red);
add(connectB,BorderLayout.SOUTH);
setVisible(true);
}getContentPane is a method so you should use it that way:
getContentPane().setLayout(new BorderLayout());
getContentPane.add(new Button("Ok"));
Maybe you are looking for
-
How do I set up microsoft office on my macbook air?
I have a product key for my microsoft office that I bought but I am not quite sure where I need to put it in to download the office
-
Summation of column in Bex Report
Hi All, I have a requirement where user wants to see that no. of Materials belongs to each vendor. And at the end of query user wants to see the over all count of material. I am able to get no. of Materials belongs to each vendor but I am not able t
-
Why is the printing colour now revereed in new Firefox on ebay
''''''bold text'''''' I downloaded the new V4 of Firefox yesterday. Now, when I print a page on Ebay, the screen colour is reversed- I get a completely black coloured page. (which uses up a hell of a lot of ink!!) Just after I press the print button
-
New few scenarios and advice to work in a project
Guys, I got certified in XI in 2007 teched, but i never worked practically in any project. Now i am willing to work in a XI project. So for that I would like to know what kind of scenarios i have to do to get confidence and practicall knowledge on XI
-
I can't turned phone on he just gone blank