0

我目前正在使用 AWT GUI 制作程序,但遇到了问题。我基本上想要屏幕左上角的图像,以及图像右侧的一列按钮。但这不是正在发生的事情。当我运行小程序时,我单击一个弹出窗口,上面写着“启动程序”,然后我想要的图片在小程序窗口本身中,而按钮列本身在另一个窗口中。这是它的样子:

截屏

有没有办法解决这个问题,使图像和按钮在同一个窗口中?

4

1 回答 1

1

是的。您正在创建一个框架,但您的图形不在框架内。没有代码就不能说太多,但是 java.sun.com 上的AWT 教程在这方面还不错。


好吧,再多一点(我很久没用AWT了。)

这是您遇到的几个问题。框架是一种窗口——它想成为一个单独的窗口,有自己的关闭按钮等等。

当你创建你的图形时,你必须告诉它是它的父组件;您以某种方式将其作为Applet的父母。所以你有一些看起来像的代码

add(myComponent);

在 Applet 的上下文中为this.

public class myApplet extends Applet {
   // lots of stuff here creating your canvas, putting the image in it
   // and so forth.  There's an example, see fn 1.
   // When you're done, you have a component, call it myImage.

   add(myImage);
}

您有一个框架,并且您正在向其中添加按钮。

public class MyFrame extends Frame {

    add(new Button(...));
    add(new Button(...));

}

您需要以某种方法将添加 Canvas 的代码移动到 Frame 类中。

(警告:这不是完整的 Java 代码,我不记得正确方法的名称。至少可能是 Applet 中的init()方法。

fn1。http://java.sun.com/developer/onlineTraining/awt/contents.html#simpleexample

于 2009-03-29T17:09:03.020 回答