Java JFrame大小的问题,求指教!

JohnsonEE 2013-06-27 03:55:24
话不多说了,直接上代码。

public class MainFrame extends JFrame{
public MainFrame() {
setSize(500, 500);
....

}
}

这样把frame设置成了500x500的尺寸
然后在panel类中 g.fillRect(500 - 50, 500 - 50, 50, 50);
表示在frame的最右下角画一个方
问题是:
显示出来的窗口中看不到这个方块,也就是说窗口的大小小于500x500.
然后我把窗口手动的拖大以后,就能看见这个方块出现在500, 500的位置。

请问,如何让这个窗口在显示的时候就保证其尺寸是我设置的那个尺寸呢?
...全文
467 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
逍遥jc 2013-07-15
  • 打赏
  • 举报
回复
边框也占空间的。包括里面的工具栏,标题栏什么的都算在一起了。
junko2012kao 2013-07-13
  • 打赏
  • 举报
回复
坐标是以左上角(0,0)开始的,向下y坐标增大,向右横坐标增大,改成g.fillRect(500 - 100, 500 - 100, 50, 50);或者其他的值也可。
地下室森林 2013-07-12
  • 打赏
  • 举报
回复
你是要所有显示在边框里面的话要考虑装饰部分。我的win7的运行出来没多大差别的
「已注销」 2013-07-12
  • 打赏
  • 举报
回复
一般来说,窗口的大小是总左上角到右下角整个大小,包括四周的边框,所以直接用那个数值是不行的。 需要考虑边框的宽度。具体宽度是多少,根据不同的系统不同。我在xp和win7上试过,边框大小基本一致,但是还是有数值上的小差别。自己定义几个数值试一下就知道边框的宽度了。
huntor 2013-07-12
  • 打赏
  • 举报
回复
有装饰(边框等)占位置
u010904025 2013-07-12
  • 打赏
  • 举报
回复
伙计,等你用了setBounds()这个方法后,你就会知道了。
terrylmay 2013-07-11
  • 打赏
  • 举报
回复
这个还用解?问你一下Frame表示什么知道么?表示窗口..你在画图的时候操作的区域想过没有?那只是你能够进行布局,绘图的地方..你在你程序中加入this.setTitle("程序");看看程序是出现在哪的..就知道为什么显示不出来了..窗口最上面是有边框的.那也是窗口大小的一部分..
JohnsonEE 2013-07-11
  • 打赏
  • 举报
回复
按照1楼的兄弟做了,结果还是不行啊,弹出来的窗口比设定的尺寸还是小一点,画出来的那个方块有一部分在frame框体外。求解啊!
地下室森林 2013-06-27
  • 打赏
  • 举报
回复
Window、Frame和Dialog的默认布局管理器是BorderLayout 你可以前面加句话:
package csdn.programbbs_627;

import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Panel;

class Frame1 extends Frame{
	Panel p = new Panel();
	
	public Frame1(){
		setLayout(null);
		setSize(500, 500);
		add(p);
		setVisible(true);
	}
	@Override
	public void paint(Graphics g) {
		g.fillRect(500 - 50, 500 - 50, 50, 50);
	}
}
public class TextFrame {
	
	public static void main(String[] args) {
		new Frame1();
		
	}
}
【更新至2025年】2001-2025年上市公司数字化转型年报词频统计(吴非、赵宸宇、甄红线)(300+年报词频统计) 1、时间:2001-2025年 2、来源:上市公司年报 3、参考文献:企业数字化转型与资本市场表现——来自股票流动性的经验证据(吴非) 数字化转型如何影响企业全要素生产率(赵宸宇) 知识产权行政保护与企业数字化转型(甄红线) 4、方法说明:(1)参考吴非老师的做法,对人工智能技术、大数据技术、云计算技术、区块链技术、数字技术运用五个维度76个数字化相关词频进行统计 (2)参考赵宸宇老师的做法,对数字技术应用、互联网商业模式、智能制造、现代信息系统四个维度99个数字化相关词频进行统计 (3)参考甄红线老师的做法,对技术分类、组织赋能、数字化应用等类别下139个数字化相关词频进行统计 5、指标:年份、股票代码、公司简称、行业名称、行业代码、全文-文本总长度、仅中英文-文本总长度、人工智能技术-吴、大数据技术-吴、云计算技术-吴、区块链技术-吴、数字技术运用-吴、数字技术应用-赵、互联网商业模式-赵、智能制造-赵、现代信息系统-赵、技术分类-人工智能技术-甄、技术分类-区块链技术-甄、技术分类-云计算技术-甄、技术分类-大数据技术-甄、组织赋能-人工智能技术-甄、组织赋能-云计算技术-甄、组织赋能-大数据技术-甄、组织赋能-广义数字技术-甄、数字化应用-技术创新-甄、数字化应用-流程创新-甄、数字化应用-业务创新-甄、人工智能、商业智能、图像理解、投资决策辅助系统、智能数据分析、智能机器人、机器学习、深度学习、语义搜索、生物识别技术、人脸识别、语音识别、身份验证、自动驾驶、自然语言处理、大数据、数据挖掘、文本挖掘、数据可视化、异构数据、征信、增强现实、混合现实、虚拟现实、云计算、流计算、图计算、内存计算、多方安全计算、类脑计算、绿色计算、认知计算等300+词频

62,622

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧