JPanel.setSize() not working
Check out this code friends don't know why i am not able to set the size of JPanel... .
import java.io.*;
import java.util.*;
import java.sql.*;
//import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
/*<applet code="k" height=400 width=400></applet>*/
public class k extends JApplet implements ActionListener
{
JButton b,tinfo;
JLabel l1,l2;
JTextField f1,f2;
JPanel p1;
CardLayout c1;
public void init()
{
b=new JButton("submit");
f1=new JTextField(20);
f2=new JTextField(20);
l1=new JLabel("username");
l2=new JLabel("password");
p1=new JPanel();
c1=new CardLayout();
add(l1);
add(f1);
add(l2);
add(f2);
add(b);
add(p1);
setLayout(new FlowLayout());
b.addActionListener(this);
}
public void actionPerformed(ActionEvent ae)
{
//Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//Connection con=DriverManager.getConnection("jdbc:odbc:mohit:","system","rock");
try
{
Properties p=new Properties();
p.load(new FileInputStream("mohu.properties"));
String str1=f1.getText();
String str2=p.getProperty("username");
System.out.println(str1);
System.out.println(str2);
//System.out.println(Integer.toString(str2.length()));
if(str1.equals(str2)开发者_Python百科)
{
if((f2.getText()).equals(p.getProperty("password")))
{
System.out.println("you are entered");
}
else
{
System.out.println("wrong first");
}
}
else
{
System.out.println("wrong second ");
}
tinfo=new JButton("teachers information");
p1.add(tinfo);
p1.setSize(200,200);
p1.setBackground(Color.RED);
//tinfo.setSize(50,50);
p1.setLayout(c1);
c1.next(p1);
}
catch(Exception ee)
{
ee.printStackTrace();
System.out.println("Exception caught ");
}
}
public void paint()
{}
}
Try using p1.setPreferredSize(new Dimension(200,200))
It doesn't work because windows have a flexible size value. The can stretch and shrink, so you set a PREFERRED size as a kind of default.
精彩评论