问题1:
你需要使用布局管理器。 推荐 BorderLayout 实现你的效果
JTable 下要插入滚动面板问题2:
这里有人给了断限制数字输入的代码,你参考修改一下吧(那问题也是你问的!)
http://expert.csdn.net/Expert/topic/3004/3004342.xml?temp=.7534449问题3:
按回车响应的是键盘事件,不需要再调用鼠标事件
你需要使用布局管理器。 推荐 BorderLayout 实现你的效果
JTable 下要插入滚动面板问题2:
这里有人给了断限制数字输入的代码,你参考修改一下吧(那问题也是你问的!)
http://expert.csdn.net/Expert/topic/3004/3004342.xml?temp=.7534449问题3:
按回车响应的是键盘事件,不需要再调用鼠标事件
2.下面是只能输入数字和"\"的JTextField,另外还增加了输入最多字符个数的限制:
import javax.swing.*;
import javax.swing.text.*;
import java.awt.*;public class test extends JTextField
{
private numDoc doc = null; public test() {
super(12);
setDocument( doc = new numDoc());
} public test(int maxLen)
{
super(12);
setDocument( doc = new numDoc(maxLen));
}
public void setMaxLen( int maxLen ) {
doc.setMaxLen( maxLen );
} public int getMaxLen() {
return doc.getMaxLen();
} public static void main( String args[] ) {
JFrame f = new JFrame("Only input number characters" );
f.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
Container c = f.getContentPane();
test test1;
c.add( test1 = new test(),BorderLayout.NORTH );
c.add( new test( 10 ),BorderLayout.CENTER );
test1.setMaxLen( 20 );
f.pack();
f.show();
}
}class numDoc extends PlainDocument
{
int maxLength=16; public numDoc(int maxLen)
{
maxLength=maxLen;
}
public numDoc(){} public void setMaxLen( int maxLength ) {
this.maxLength = maxLength;
} public int getMaxLen() {
return maxLength;
} public void insertString(int offset,String s,AttributeSet a)throws BadLocationException
{
int len=getLength();
String str=getText(0,len);
if ( (str+s).length()>maxLength )
{
Toolkit.getDefaultToolkit().beep();
return;
}
try
{
java.util.StringTokenizer tokens = new java.util.StringTokenizer( str+s,"\\" );
while( tokens.hasMoreElements() ) {
Integer.parseInt( (String)tokens.nextElement() );
}
}
catch ( Exception e )
{
Toolkit.getDefaultToolkit().beep();
return;
}
super.insertString(offset,s,a);
}
}
3.我想你的意思是不是想在JTextField输入完毕后,直接按enter就行了,不用按旁边的按钮?这样的话,直接在JTextField中添加ActionListener即可,功能代码和旁边按钮的功能代码一样!
有一个JButton按钮,当点击JButton的时候,能够响应ActionListener事件,删除指定的数据。现在我不是用鼠标点击,当按下Tab键JButton得到了焦点后,我再按下回车键,此时按钮没有响应ActionListener事件。我想知道:在按下回车键后,怎样才能使JButton像响应ActionListener事件一样删除数据(我不想再重新写一边ActionListener事件中的程序)
public void keyPressed( KeyEvent e ) {
if( e.getKeyCode() == VK_ENTER ) {
jbutton.addKeyListener( new KeyAdapter() {
public void keyPressed( KeyEvent e ) {
if( e.getKeyCode() == VK_ENTER ) {
do_jbutton_code();
}
}
} );
这样应该可以了吧!
全屏显示时候,要实现我的第一个问题,应该添加WindowListener事件,重写里面的方法。可是WindowListener中没有resize方法,应该怎么实现?