Java JTextField卷轴
我制作这个程序是为了好玩,我被卡住了,因为这个程序在屏幕上运行。如何实现滚动条而不必完全更改代码Java JTextField卷轴,java,swing,user-interface,joptionpane,choice,Java,Swing,User Interface,Joptionpane,Choice,我制作这个程序是为了好玩,我被卡住了,因为这个程序在屏幕上运行。如何实现滚动条而不必完全更改代码 public static void main(String args[]) throws IOException { String ai,ia,ny; JTextField field1 = new JTextField(); JTextField field2 = new JTextField(); JT
public static void main(String args[]) throws IOException
{
String ai,ia,ny;
JTextField field1 = new JTextField();
JTextField field2 = new JTextField();
JTextField field3 = new JTextField();
JTextField field4 = new JTextField();
JTextField field5 = new JTextField();
JTextField field6 = new JTextField();
JTextField field7 = new JTextField();
JTextField field8 = new JTextField();
JTextField field9 = new JTextField();
JTextField field10 = new JTextField();
JTextField field11 = new JTextField();
JTextField field12 = new JTextField();
JTextField field13 = new JTextField();
JTextField field14 = new JTextField();
JTextField field15 = new JTextField();
JTextField field16 = new JTextField();
JTextField field17 = new JTextField();
JTextField field18 = new JTextField();
JTextField field19 = new JTextField();
JTextField field20 = new JTextField();
JTextField field21 = new JTextField();
JTextField field22 = new JTextField();
JTextField field23 = new JTextField();
Object[] message = {
"Rent:", field1,
"Water:", field2,
"Light:", field3,
"DTV:", field4,
"Sprint:", field5,
"stf:", field6,
"Tithe:", field7,
"sff:", field8,
"trr:", field9,
"Citi:", field10,
"Chase:", field11,
"Walmart:", field12,
"Miss:", field13,
"Charter",field14,
"Insurance:",field15,
"Contribution", field16,
"Lowes", field17,
"Stream", field18,
//"Water", field19,
//"", field,
};
//user input
//final ImageIcon icon = new ImageIcon("icon.jpg");
int option = JOptionPane.showConfirmDialog(field1, message, "Enter all your info", JOptionPane.OK_CANCEL_OPTION);
if (option == JOptionPane.OK_OPTION)
{
String Rent = field1.getText();
String Water = field2.getText();
String Light = field3.getText();
String Dtv = field4.getText();
String Sprint = field5.getText();
String Par = field6.getText();
String Tit = field7.getText();
String sd = field8.getText();
String sdd = field9.getText();
String Citi = field10.getText();
String Chase = field11.getText();
String Wal = field12.getText();
String sd = field13.getText();
String Chasrt = field14.getText();
String ds = field15.getText();
String sdd = field16.getText();
String Lowes = field17.getText();
String Stream = field18.getText();
您可以使用JScrollPane 您所需要做的就是实例化JScrollPane类,并作为第一个参数为它提供包含所有文本字段的内容窗格
JScrollPane scrollPane=新的JScrollPane(此处的主要内容窗格为scrollPane.VERTICAL\u SCROLLBAR\u AS\u NEEDED,JScrollPane.HORIZONTAL\u SCROLLBAR\u NEEDED);
之后,只需将滚动窗格添加到主内容窗格。调整显示的方法以使用
GridLayout
所需的最小更改。还考虑<代码> BoxLayout < /代码>、“显示”或“代码> GoLoopOuts< /C>”、“显示”和“”。
导入java.awt.Component;
导入java.awt.Dimension;
导入java.awt.EventQueue;
导入java.awt.GridLayout;
导入javax.swing.JLabel;
导入javax.swing.JOptionPane;
导入javax.swing.JPanel;
导入javax.swing.JScrollPane;
导入javax.swing.JTextField;
/**
*@见https://stackoverflow.com/a/15078211/230513
*/
公开课考试{
JTextField field1=新的JTextField();
JTextfield2=新的JTextField();
JTextField field3=新的JTextField();
JTextField field4=新的JTextField();
JTextfield5=新的JTextField();
JTextfield6=新的JTextField();
JTextField field7=新的JTextField();
JTextField field8=新的JTextField();
JTextfield9=新的JTextField();
JTextfield10=新的JTextField();
JTextfield11=新的JTextField();
JTextfield12=新的JTextField();
JTextfield13=新的JTextField();
JTextfield14=新的JTextField();
JTextfield15=新的JTextField();
JTextfield16=新的JTextField();
JTextField 17=新的JTextField();
JTextField 18=新的JTextField();
对象[]消息={
“租金:”,字段1,
“水:”,字段2,
“光:”,字段3,
“数字电视:”,字段4,
“冲刺:”,第5场,
“stf:”,字段6,
“十分之一:”,字段7,
“sff:”,字段8,
“trr:”,字段9,
“花旗:”,字段10,
“蔡斯:”,第11场,
“沃尔玛:”,字段12,
“小姐:”,字段13,
“宪章”,第14栏,
“保险:”,字段15,
“贡献”,第16栏,
“Lowes”,第17场,
“溪流”,第18栏,};
专用void display(){
JPanel面板=新JPanel(新网格布局(0,2));
int i=0;
while(i
import java.awt.Component;
import java.awt.Dimension;
import java.awt.EventQueue;
import java.awt.GridLayout;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
/**
* @see https://stackoverflow.com/a/15078211/230513
*/
public class Test {
JTextField field1 = new JTextField();
JTextField field2 = new JTextField();
JTextField field3 = new JTextField();
JTextField field4 = new JTextField();
JTextField field5 = new JTextField();
JTextField field6 = new JTextField();
JTextField field7 = new JTextField();
JTextField field8 = new JTextField();
JTextField field9 = new JTextField();
JTextField field10 = new JTextField();
JTextField field11 = new JTextField();
JTextField field12 = new JTextField();
JTextField field13 = new JTextField();
JTextField field14 = new JTextField();
JTextField field15 = new JTextField();
JTextField field16 = new JTextField();
JTextField field17 = new JTextField();
JTextField field18 = new JTextField();
Object[] message = {
"Rent:", field1,
"Water:", field2,
"Light:", field3,
"DTV:", field4,
"Sprint:", field5,
"stf:", field6,
"Tithe:", field7,
"sff:", field8,
"trr:", field9,
"Citi:", field10,
"Chase:", field11,
"Walmart:", field12,
"Miss:", field13,
"Charter", field14,
"Insurance:", field15,
"Contribution", field16,
"Lowes", field17,
"Stream", field18,};
private void display() {
JPanel panel = new JPanel(new GridLayout(0, 2));
int i = 0;
while (i < message.length) {
panel.add(new JLabel((String) message[i++], JLabel.RIGHT));
panel.add((Component) message[i++]);
}
JScrollPane jsp = new JScrollPane(panel) {
@Override
public Dimension getPreferredSize() {
return new Dimension(320, 240);
}
};
JOptionPane.showMessageDialog(
null, jsp, "Enter data", JOptionPane.PLAIN_MESSAGE);
}
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
new Test().display();
}
});
}
}