面向对象程序设计实验报告java实验报告图形用户界面.doc
文本预览下载声明
图形用户界面设计
实验1
Nested Panels
The program Nested Panels.java is from Listing 3.8 of the text. Save the program to your directory and do the following:
Compile and run the program. Experiment with resizing the frame and observe the effect on the components.
运行程序后出现如下界面:
改变窗口的大小,观察到:(见下图)
(1)两个子面板one和two的尺寸都保持不变。
(2)蓝色的主面板随着窗口的变大而扩展。
(3)蓝色面板变长,one和two子面板都不变,当蓝色面板变宽时,两个子面板随着它移动,并保持居中状态。
(4)缩小窗口,根据流式布局的形式,two子面板因为位置容不下,自动被放在下一行的位置。
2. Modify the program by adding a third subpanel that is twice as wide, but the same height, as the other two subpanels. Choose your own label and color for the subpanel (the color should not be red, green, or blue). Add the panel to the primary panel after the other two panels.
修改的代码如下:
JPanel subPanel3 = new JPanel() ;
subPanel3.setPreferredSize (new Dimension(300, 100));
ubPanel3.setBackground (Color.red);
JLabel label3 = new JLabel (Three);
subPanel3.add (label3);
primary.add (subPanel3);
3. Compile and run the modified program. Again, experiment with resizing the frame and observe the effect on the components.
改变窗口的大小,3个子面板变化情况跟第一步实验的类似。
4. Now add a statement to the program to set the preferred size of the primary panel to 320 by 260. (What would be the
purpose of this?). Compile and run the program to see if anything changed.
代码修改:
primary.setPreferredSize (new Dimension(320, 260));
这一步是运行时让主面板的大小固定为宽度320,高度260。
5. Now add another panel with background color blue and size 320 by 20. Add a My Panels label to this panel and
then add this panel to the primary panel before adding the other panels. Compile and run the program. What was the
effect of this panel?
代码如下:
JPanel subPanel4 = new JPanel() ;
subPanel4.setPreferredSize (new Dimension(320, 20));
subPanel4.setBackground (Color.blue);
JLabel label4 = new JLabel (MyPanel);
subPanel4.add (label4);
……………………………
primary.add (subPanel4);
primary.add (subPanel1);
primary.add (subPanel2);
primary.add (subPanel3);
因为蓝色主面板的宽320,由于流式布局,一个一个把面板加到主面板,M
显示全部