我正在创建一个将矩阵转换为图形的程序 . 它需要矩阵通过它然后将显示10 * 10个框 . 一切正常,但这是我的问题 .
让我们说我想制作一个矩阵[3] [3],这样当我使我的JFrame 30 * 30变小时,图像将是30乘30 . 这可能是一个初学者的错误,但我怀疑我不包括边界?
所以它的制作方块是10乘10,JFrame大小是30,30,但JFrame中的空间比它应该小 .
public void paint(Graphics w){
for (int row = 0; row < a.length; row ++ )
for (int col = 0; col < a[row].length; col++ )
{
if(a[row][col]==1){
w.fillRect(col*10, row*10, 10,10);
}
x+=10;
}
}
请问,请解释窗口的边框有多大,这样我才能使JFrame的大小合适?谢谢你帮我理解!
1 回答
Windows(和框架)周围有装饰,它们位于框架内部依赖,因此如果您将框架设置为30x30,则可查看框架的框架将更小 .
你想要做的是覆盖你主要容器的
getPreferredSize
方法,它返回(在这个例子中),30x30和框架上的调用pack
.这将调整窗口的大小,使可视区域至少为30x30