java 文本显示 问题
下面是我写的一个代码片段,我取出来了,可以直接编译运行,但有两个问题想得到解决!一:商品名和对应商品编号两行诗可编辑,但是光标在文本框里时一直按Tab键,文本框的长度要变...
下面是我写的一个代码片段,我取出来了,可以直接编译运行,但有两个问题想得到解决!
一:商品名和对应商品编号两行诗可编辑,但是光标在文本框里时一直按Tab键,文本框的长度要变化,这该怎么解决?
二:除商品名和对应商品编号栏为可编辑外,其他行须不可编辑,只显示事件出发后获得的信息,该用什么类比较好?
希望高手不要嫌麻烦,运行看一下效果,有什么不妥的直接帮我改了就是,不胜感激!
因为新手,有很多都还不知道,所以问题简单。
麻烦了!!!!!!!!!!
import java.awt.*;
import javax.swing.*;
public class select extends JFrame
{
public select()
{
super("请输入要查询的商品名和编号");
Container c=getContentPane();
c.setLayout(new BoxLayout(c,BoxLayout.Y_AXIS));
this.setResizable(false);
JTextField[] S_JField= { new JTextField("商品名",8),
new JTextField("对应商品编号",8),new JTextField("售 价",8),new JTextField("生产厂商",8),
new JTextField("商品产地",8),new JTextField("生产日期",8),new JTextField("保质期 ",8),
new JTextField("年",2),new JTextField("月",2),new JTextField("日",2),
new JTextField("年",2),new JTextField("月",2),new JTextField("日",2)};
//确定S_JField[]不可编辑属性
for(int i=0;i<13;i++)
{
S_JField[i].setEditable(false);
}
//创建7个模板
JPanel[] JP=new JPanel[7];
JP[0]=new JPanel();
JP[0].add(S_JField[0]);
JP[0].add(new JTextArea("",1,15));
JP[0].add(new JButton("查询"));
//将组建添加进模版中
for(int i=1;i<5;i++)
{
JP[i] = new JPanel();
JP[i].add(S_JField[i]);
JP[i].add(new JTextArea("",1,21));
}
for(int i=5,j=7;i<7;i++)
{ JP[i] = new JPanel();
JP[i].add(S_JField[i]);
JP[i].add(new JTextArea("",1,4));
JP[i].add(S_JField[j++]);
JP[i].add(new JTextArea("",1,4));
JP[i].add(S_JField[j++]);
JP[i].add(new JTextArea("",1,4));
JP[i].add(S_JField[j++]);
}
//将模板添加进内容窗格中
for(int i=0;i<7;i++)
{
JP[i].setLayout(new FlowLayout());
c.add(JP[i]);
}
}
public static void main(String[] args)
{
select app=new select();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
app.setSize(360,300);
app.setVisible(true);
}
} 展开
一:商品名和对应商品编号两行诗可编辑,但是光标在文本框里时一直按Tab键,文本框的长度要变化,这该怎么解决?
二:除商品名和对应商品编号栏为可编辑外,其他行须不可编辑,只显示事件出发后获得的信息,该用什么类比较好?
希望高手不要嫌麻烦,运行看一下效果,有什么不妥的直接帮我改了就是,不胜感激!
因为新手,有很多都还不知道,所以问题简单。
麻烦了!!!!!!!!!!
import java.awt.*;
import javax.swing.*;
public class select extends JFrame
{
public select()
{
super("请输入要查询的商品名和编号");
Container c=getContentPane();
c.setLayout(new BoxLayout(c,BoxLayout.Y_AXIS));
this.setResizable(false);
JTextField[] S_JField= { new JTextField("商品名",8),
new JTextField("对应商品编号",8),new JTextField("售 价",8),new JTextField("生产厂商",8),
new JTextField("商品产地",8),new JTextField("生产日期",8),new JTextField("保质期 ",8),
new JTextField("年",2),new JTextField("月",2),new JTextField("日",2),
new JTextField("年",2),new JTextField("月",2),new JTextField("日",2)};
//确定S_JField[]不可编辑属性
for(int i=0;i<13;i++)
{
S_JField[i].setEditable(false);
}
//创建7个模板
JPanel[] JP=new JPanel[7];
JP[0]=new JPanel();
JP[0].add(S_JField[0]);
JP[0].add(new JTextArea("",1,15));
JP[0].add(new JButton("查询"));
//将组建添加进模版中
for(int i=1;i<5;i++)
{
JP[i] = new JPanel();
JP[i].add(S_JField[i]);
JP[i].add(new JTextArea("",1,21));
}
for(int i=5,j=7;i<7;i++)
{ JP[i] = new JPanel();
JP[i].add(S_JField[i]);
JP[i].add(new JTextArea("",1,4));
JP[i].add(S_JField[j++]);
JP[i].add(new JTextArea("",1,4));
JP[i].add(S_JField[j++]);
JP[i].add(new JTextArea("",1,4));
JP[i].add(S_JField[j++]);
}
//将模板添加进内容窗格中
for(int i=0;i<7;i++)
{
JP[i].setLayout(new FlowLayout());
c.add(JP[i]);
}
}
public static void main(String[] args)
{
select app=new select();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
app.setSize(360,300);
app.setVisible(true);
}
} 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询