我正在开发一个小程序,最后会显示一个表格,以便对银行帐户感兴趣。我正在尝试从用户收集输入,显示一系列提示,然后是文本输入框,最后是一个触发清除,计算和显示部件的按钮。我希望提示和按钮左对齐,每行一组(但它们足够长,所以每条线只有1个适合)不断发生的问题,就是尽可能地尝试,它们一直显示在中心,两者都在我的浏览器,以及我学校使用的基本IDE。我目前将它们放在面板中,但这不是我要求的,这只是我的最后一次尝试。如果可能,我更喜欢他们走了。无论哪种方式,我想我可能会遗漏一些东西,因为我仍然是java的菜鸟,也许有人可以发现他们为什么像我想要的那样留在左边。感谢。
以下是相关的代码部分,有些产品的输出较晚,但尚未准备就绪,而且我认为这对于这个问题并不重要。
import java.applet.*; //imports req'd libraries
import java.awt.*;
public class AppletsExercise_2 extends Applet
{
Label promptDeposit, promptRate, promptStart, promptLast;
TextField inputDeposit, inputRate, inputStart, inputLast;
private Panel p1, p2, p3, p4;
int min = 1998;
int max = 2008;
public void init ()
{
p1 =new Panel(); //a bunch of nasty panels, my last attempt, but not at all preferred
p1.setLayout (new FlowLayout (FlowLayout.LEFT,20,10));
p2 =new Panel();
p2.setLayout (new FlowLayout (FlowLayout.LEFT,20,10));p1 =new Panel();
p3 = new Panel();
p3.setLayout (new FlowLayout (FlowLayout.LEFT,20,10));
p4 =new Panel();
p4.setLayout (new FlowLayout (FlowLayout.LEFT,20,10));
promptDeposit = new Label ("Enter the initial deposit: "); //creates labels for each of the fields
promptRate = new Label ("Enter the interest rate, in percent: ");
promptStart = new Label ("Enter the starting year: ");
promptLast = new Label ("Enter the number of years: ");
inputDeposit = new TextField (6); //creates each of the fields
inputRate = new TextField (2);
inputStart = new TextField (4);
inputLast = new TextField (4);
Button calculate = new Button ("Calculate");
p1.add(promptDeposit); //adds a prompt for each piece of info, followed by a text field for the user
p1.add(inputDeposit);
p2.add(promptRate);
p2.add(inputRate);
p3.add(promptStart);
p3.add(inputStart);
p4.add(promptLast);
p4.add(inputLast);
p1.add (calculate);
add("North", p1); //adds the stupid panels, top down
add("North", p2);
add("North", p3);
add("North", p4);
}
最后,这是Google Chrome中当前输出的图片 http://i.stack.imgur.com/VGpov.jpg
答案 0 :(得分:0)
也许您应该在init
方法中指定布局策略,如下所示:
this.setLayout(new GridLayout(4, 1));