当前位置: 首页 > 知识库问答 >
问题:

JavaApplet JOptionPane和setSize问题

沈宇定
2023-03-14

我先说我对java有点生疏,所以如果是个愚蠢的错误,那就是原因。

我在Java中弄乱了小程序,并且在设置窗口大小和使用JOptionPane时遇到了一个问题,无论是只是显示消息,还是通过它获取输入,它都会显示三个或更多窗格,而不仅仅是一个窗格。我在Ubuntu 12.04(x64)上,这是我的测试代码仍然遇到问题:

import javax.swing.JOptionPane;
import java.awt.Graphics;
import java.applet.Applet;

public class Main extends Applet{

    public void paint(Graphics g)
    {
        //setup screen size
        setSize((int)500,(int)500);
        //print test message
        JOptionPane.showMessageDialog(null, "There Should Be One Of Me!");
    }
}

共有2个答案

施文彬
2023-03-14

> < li>

删除< code>setSize(..和< code>JOptionPane.sh...来自< code > public void paint(Graphics g)

对于Applet,我缺少init()方法

(J)Applet教程展示了几个例子

也许更好的方法是使用Swing JFrame而不是(J)Applet

端木宏盛
2023-03-14

这是预料之中的:选项窗格的数量与对 paint 方法的调用次数一样多:-)后者不能由应用程序代码控制,无论是在AWT中还是在Swing中。

作为一般规则,永远不要更改在绘制周期中调用的方法中的任何组件状态

 类似资料:
  • 问题内容: 我不清楚和之间的区别。如果我使用而不是会发生什么。 方法到底能做什么? 问题答案: 调用窗口将根据其包含的组件的preferredSize对其大小进行调整。它应尽可能小,但要考虑其组件的preferredSize和布局。如果您只是随机使用,则添加到内容窗格中的组件将进行扩展/收缩以适应可用空间,这意味着可能会覆盖每个组件的首选大小。 设置组件的大小并设置首选的大小。Layoutmana

  • 描述 (Description) java.util.zip.ZipEntry.setSize(long size)方法设置条目数据的未压缩大小。 声明 (Declaration) 以下是java.util.zip.ZipEntry.setSize(long size)方法的声明。 public void setSize(long size) 参数 (Parameters) size - 未压缩

  • 上下文:我有一个从父“启动器”程序运行的Swing JFrame应用程序。启动器负责检查更新和实际更新应用程序。因此,它在儿童类加载器中运行该应用程序,最终在新的jar可用时重新启动它。 Boes有人对正在发生的事情有洞察力吗?我是不是应该做点别的事情来把一切都清理干净?

  • 问题内容: 我阅读了Java文档,但无法弄清楚这两种方法之间的主要区别是什么。有时我用了,有时是,有时是一个做我想做的,有时是另一个。 那么,两者的主要区别是什么?我应该使用哪一个和? 问题答案: 简短的答案是:很复杂。 稍长一点的答案是:如果组件的父级没有布局管理器,以及与之相关的组件(如果有),则使用。 如果组件的父级使用布局管理器,则可能什么都不做;通常会对其产生影响的位置将位于顶级组件(和

  • 问题内容: 我有一个Java小程序,J试图使用setSize将其设置为480、800,但是由于某种原因,窗口出现487,850。这是设置它的代码。 在代码中的其他任何地方都没有提到设置大小,为什么会这样呢? 问题答案: 您没有在applet本身中设置applet的大小,并且尝试这样做将不会有任何效果,正如您所发现的那样。如果要指定小程序的大小,请在调用小程序的HTML代码中执行此操作。 顺便说一句

  • 问题内容: 所以我已经在Java编程学了一个学期左右的时间,而且我遇到了几次这个问题,最后才开始提出问题。 如果我做一个然后设置大小,例如。帧实际上并不长。据我所知,它实际上更长。另外,如果您将垂直尺寸设置得非常小(低于30),则框架甚至不会显示,只有操作系统顶部的窗口栏和框架才会变大,直到您将值超过30(这样看起来与)相同。为什么会这样,修复起来并不难,但是很奇怪,我很好奇为什么会这样? 如果您