有关在Graphics在JFrame 中画线的问题!

K_THEKING 2008-03-05 11:29:41
我是个java菜鸟!想问一下在java中用Graphic画怎么没显示出来?敬请哪位高手指点一二!
...全文
393 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
coopery 2008-03-25
  • 打赏
  • 举报
回复
看看
zr_dixuexiongying 2008-03-25
  • 打赏
  • 举报
回复
你如果不想用面板也可以的,在
public void paint(Graphics g)
{
super.paint(g); //加上这么一句话,调用父类的paint方法
g.drawLine(20,550,260,550);
g.drawLine(140,50,140,550);
g.drawLine(280,550,520,550);
g.drawLine(400,50,400,550);
g.drawLine(540,550,780,550);
g.drawLine(660,50,660,550);
}
K_THEKING 2008-03-25
  • 打赏
  • 举报
回复
现在还有个问题在JFrame里面为什么 一 开始没有显示仍然是这个问题!
显然这在初始化的时候会对程序有影响的我想问问这是怎么一回事!也就是我
最想问的问题。。
谢谢!
K_THEKING 2008-03-21
  • 打赏
  • 举报
回复
我的意思是说不用那个不也可以吗?为什么在那种情况下会出现.....谢谢!
guxiangzhang 2008-03-17
  • 打赏
  • 举报
回复
来学习 一下啊 !
我也迷惑那!
zr_dixuexiongying 2008-03-17
  • 打赏
  • 举报
回复
就我在上面给你写的那个例子啊!
K_THEKING 2008-03-16
  • 打赏
  • 举报
回复
对了就拿我上面的例子来说你看看怎么搞
K_THEKING 2008-03-16
  • 打赏
  • 举报
回复
JPanel?但是有的不是直接放进去吗>?只是一个框架高手想问一下这所代表的深层含义.........谢谢
zr_dixuexiongying 2008-03-13
  • 打赏
  • 举报
回复
JFrame和Frame只是一个框架而已,一般添加组件的话还是放在面板里面
zr_dixuexiongying 2008-03-10
  • 打赏
  • 举报
回复
我在书上面查了一下的,书上的解释如下:

要在小应用程序或应用程序中的画板上绘制自定义图形,差不多始终要编写扩展JPanel类的新类,在该类中,覆盖paintComponent()方法的定义.

也就是说,任何时候,你准备把文本信息或图形放入画板,都需要定义一个新类,并改写paintComponent()方法.如:

class MyPanel extends JPanel
{
...
public void paintComponent(Graphics g)
{
.....//将在这里通过参数g完成绘制代码
}
}
zr_dixuexiongying 2008-03-10
  • 打赏
  • 举报
回复
我给你想了一个方法,就是将这个绘画的方法放到Panel里面去,可能面板上面不能够绘画吧!

代码如下:

import javax.swing.*;
import java.awt.*;

public class GraphicsExam extends JFrame
{
public GraphicsExam()
{
setTitle("Login");
setSize(1000,700);
setVisible(true);
setResizable(false);
Container con = getContentPane();
con.add(new ExampPanel());
setDefaultCloseOperation(EXIT_ON_CLOSE);
}

public static void main(String[] args)
{
JFrame.setDefaultLookAndFeelDecorated(true);
new GraphicsExam();
}


}

class ExampPanel extends JPanel
{
public void paint(Graphics g)
{
g.drawLine(20,550,260,550);
g.drawLine(140,50,140,550);
g.drawLine(280,550,520,550);
g.drawLine(400,50,400,550);
g.drawLine(540,550,780,550);
g.drawLine(660,50,660,550);
}
}
K_THEKING 2008-03-10
  • 打赏
  • 举报
回复
但是这个在JFrame中若缩放一下又可显示!按您的意思是不是在Frame和JFrame中都这样还是另外在JFrame中按paintComponent()
另外这个在Frame中的应用不是还好吗?麻烦再问一下为什么在JFrame中为什么会出现这种状态.....尤其是在缩放之后你看仍可看到.
谢谢了
duwenjie1 2008-03-10
  • 打赏
  • 举报
回复
试了一下可以出来的效果不怎么好!
K_THEKING 2008-03-07
  • 打赏
  • 举报
回复
很明显的问题我在缩小再放大后会产生线天!
在此我又想请教一下Graphics在JFrame中的'兼容'是不是有问题还是别的原因?
请高手指教;
zr_dixuexiongying 2008-03-06
  • 打赏
  • 举报
回复
我运行了你的代码!可以显示啊!你把大小调一下这个太大了看不出来,我试了好项只显示了几个直线,没有看到面版,你自己再调试一下,可以的
K_THEKING 2008-03-06
  • 打赏
  • 举报
回复
你们能看到!?我运行好几次后才能看到而且背景没有只有模糊的线条~
我的机子把桌面上的背景也截了进去不知道是什么原因?
cursor_wang 2008-03-06
  • 打赏
  • 举报
回复
我这里运行没有问题,可以显示的.
K_THEKING 2008-03-05
  • 打赏
  • 举报
回复
请哪位高手为我这个新手解决谢谢了!
K_THEKING 2008-03-05
  • 打赏
  • 举报
回复
import javax.swing.*;
import java.awt.*;
public class GraphicsExam extends JFrame
{
public GraphicsExam()
{
setSize(1000,700);
setVisible(true);
setResizable(false);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args)
{
new GraphicsExam();
}
public void paint(Graphics g)
{
g.drawLine(20,550,260,550);
g.drawLine(140,50,140,550);
g.drawLine(280,550,520,550);
g.drawLine(400,50,400,550);
g.drawLine(540,550,780,550);
g.drawLine(660,50,660,550);
}
}

62,614

社区成员

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

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