java - 图形和小程序

标签 java swing graphics layout-manager japplet

我目前正在做一项作业,需要为 Mandelbrot 集创建基本控件(按钮),并将其作为 JApplet 运行。图形在 init() 方法中初始化,并在 start() 中调用绘制 Mandelbrot 的方法。问题是,我到处搜索,但无法弄清楚如何向我的小程序添加 GUI,因为

  1. 我没有明确将 mandelbrot 添加到 JPanel 中,并且..
  2. 我没有剩余空间,似乎需要添加 GUI,因为 Mandelbrot 占用了整个 JFrame

我有一个想法,那就是设置 JFrame 的大小,将 Mandelbrot 图形的大小设置为整个框架的 4/5,然后在剩余部分添加按钮?

这听起来像是一个好的解决方案吗?

最佳答案

Does that sound like a good solution?

没有。绘制 Mandelbrot 的面板应返回合理的首选尺寸。使用空白区域的布局填充、边框和按钮边距将渲染面板和按钮添加到一个或多个布局组中。

但是我对 的引用有点困惑标签,但问题的正文提到了 JApplet 和(两次)JFrame

  • 小程序必须使用启动它的 HTML(或 JS,在部署工具包脚本的情况下)提供的任何大小。
  • 框架可以调用pack()在布局正确的 UI 上,并期望是显示组件所需的最小尺寸。

一般提示

  1. 为什么要编写小程序代码?如果是由于规范原因。老师写的,请引用Why CS teachers should stop teaching Java applets
  2. 对于部署 Java 桌面应用程序,最佳选择通常是安装该应用程序。使用Java Web Start 。 JWS 允许用户从网页中的链接启动 JFrame
  3. Java GUI 可能必须在多种平台、不同的屏幕分辨率和使用不同的 PLAF 上工作。因此,它们不利于元件的精确放置。要组织组件以获得强大的 GUI,请使用布局管理器,或 combinations of them 1,以及 white space 的布局填充和边框2


关于java - 图形和小程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23303445/

相关文章:

java - Spring 安全上下文未在 AuthenticationManager.authenticate 上更新

java - 窗口/舞台失去焦点时的事件

java - 如何通过流中的三元条件返回值?

java - JPanel 已添加到切换按钮单击上的其他 Jpanel 上

Java 面板向下滚动

Java Swing : Drawing curved lines

java - ActionListeners、多字段更新和从文件重新加载用户 GUI 选择

c# - 是否可以以编程方式为图像着色?

python - Pyglet:全屏时如何更改分辨率?

java - 如何在Java中分层绘制组件?