Java JFrame 使用 paint 方法不显示绘制图像。 1C
 public class Show extends JFrame{
    public Show(){
        setTitle("Calcutor");
        setSize(90*3,160*3);
        setVisible(true);
    }
}

public class Main {
    public static void main(String args[]){
        Show show=new Show();
        Graphics g= show.getGraphics(); 
        g.setColor(Color.pink);
        g.fillRect(0, 0, show.getWidth(), show.getHeight()); 
    }
}

上面这个不能显示图片。

 public class Main {
    public static void main(String args[]){
        Show show=new Show();
        Graphics g= show.getGraphics(); 
        try   
        {   
        Thread.currentThread().sleep(1000);//毫秒   
        }   
        catch(Exception e){} 
        g.setColor(Color.pink);
        g.fillRect(0, 0, show.getWidth(), show.getHeight()); 

    }
}

当我加上

 try   
    {   
        Thread.currentThread().sleep(1000);//毫秒   
    }   
    catch(Exception e){};
时就会显示图像,这是怎么回事?能不能 不加这个也能显示图像呢?

2个回答

要先画图片,然后再show jframe

jframe的setvisible放后面调用,即画完后

in_clude
Nldmg 但这样会报错
接近 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Java JFrame中使用双缓冲解决paint方法闪烁问题
刚接触Java时,使用了Java中的awt.Applet实现了迷宫小游戏,遇到闪烁问题并利用双缓冲技术解决了。但是最近实验中又遇到了这个问题,不过这次是swing.JFrame类了,基本思想都一样,但是解决方式却不太相同。这次是要在paint方法中添加双缓冲技术。@Override public void paint(Graphics g) { if (iBuffer == null)...
java使用paint方法画图
java使用paint方法画图 需要继承JFrame类来画窗口 => public class Game extends JFrame {} setTitle(String s); //设置窗口标题 setLocation(int x, int y); //设置窗口位置 setSize(int width, int height); //设置窗口宽和高 setVisible(tru...
关于JFrame的paint问题
直接在JFrame内重写的paint方法中调用某一控件rnrn的repaint方法会抛出异常。但不影响程序运行。rnrn而先把控件都加到一个JPanel上,并在JPanel内rnrn重写的paint方法中调用控件的repaint方法则不rnrn会抛出异常。再将JPanel加到JFrame就可解决。rnrn但对于有监听器的控件还需在JFrame中添加一次,rnrn并增加监听器.rnrn想知道这是为什么。有没有更好的解决方法?rn
关于jframe中paint方法 重绘机制
import java.awt.Color;rnimport java.awt.Graphics;rnimport java.awt.Image;rnimport java.awt.Rectangle;rnimport java.awt.Toolkit;rnimport java.awt.event.WindowEvent;rnimport java.awt.event.WindowListener;rnimport java.io.PrintStream;rnimport javax.swing.JButton;rnimport javax.swing.JFrame;rnimport javax.swing.JLabel;rnimport javax.swing.JPanel;rnimport javax.swing.JProgressBar;rnimport javax.swing.JTextField;rnimport org.omg.CORBA.ORB;rnrnimport com.sun.corba.se.impl.activation.CommandHandler;rnrnpublic class test extends JFrame implements WindowListener, CommandHandler rnrn private static final long serialVersionUID = 1L;rnrn private JPanel jContentPane = null;rnrn private JButton jButton = null;rnrn private JButton jButton2 = null;rnrn private JButton jButton3 = null;rnrn private JButton jButton4 = null;rnrn private JButton jButton5 = null;rnrn private JLabel jLabel1 = null;rnrn private JLabel jLabel = null;rnrn private JTextField jTextField = null;rnrn private JTextField jTextField2 = null;rnrn private JProgressBar jProgressBar = null;rnrn public void windowActivated(WindowEvent e) rn // TODO Auto-generated method stubrnrn rnrn public void windowClosed(WindowEvent e) rn // TODO Auto-generated method stubrnrn rnrn public void windowClosing(WindowEvent e) rn rnrn rnrn public void windowDeactivated(WindowEvent e) rn // TODO Auto-generated method stubrnrn rnrn public void windowDeiconified(WindowEvent e) rn // TODO Auto-generated method stubrnrn rnrn public void windowIconified(WindowEvent e) rn // TODO Auto-generated method stubrnrn rnrn public void windowOpened(WindowEvent e) rn // TODO Auto-generated method stubrnrn rnrn public String getCommandName() rn // TODO Auto-generated method stubrn return null;rn rnrn public void printCommandHelp(PrintStream out, boolean helpType) rn // TODO Auto-generated method stubrnrn rnrn public boolean processCommand(String[] cmd, ORB orb, PrintStream out) rn // TODO Auto-generated method stubrn return false;rn rnrn /**rn * This is the default constructorrn */rn public test() rn super();rn initialize();rn rnrn /**rn * This method initializes thisrn * rn * @return voidrn */rn private void initialize() rn this.setSize(496, 208);rn this.setContentPane(getJContentPane());rn this.setTitle("文件加密");rn rnrn /**rn * This method initializes jContentPanern * rn * @return javax.swing.JPanelrn */rn private JPanel getJContentPane() rn if (jContentPane == null) rn jLabel = new JLabel();rn jLabel.setBounds(new Rectangle(64, 70, 54, 24));rn jLabel.setText(" 密 码 ");rn jLabel1 = new JLabel();rn jLabel1.setBounds(new Rectangle(63, 38, 55, 24));rn jLabel1.setText("文件路径");rn jLabel1.setOpaque(true);rn jContentPane = new JPanel();rn jContentPane.setLayout(null);rn jContentPane.add(getJButton(), null);rn jContentPane.add(getJButton2(), null);rn jContentPane.add(getJButton3(), null);rn jContentPane.add(getJButton4(), null);rn jContentPane.add(getJButton5(), null);rn jContentPane.add(jLabel1, null);rn jContentPane.add(jLabel, null);rn jContentPane.add(getJTextField(), null);rn jContentPane.add(getJTextField2(), null);rn jContentPane.add(getJProgressBar(), null);rn rn return jContentPane;rn rnrn /**rn * This method initializes jButton rn * rn * @return javax.swing.JButton rn */rn private JButton getJButton() rn if (jButton == null) rn jButton = new JButton();rn jButton.setBounds(new Rectangle(26, 9, 60, 17));rn jButton.setText("编码");rn rn return jButton;rn rnrn /**rn * This method initializes jButton2 rn * rn * @return javax.swing.JButton rn */rn private JButton getJButton2() rn if (jButton2 == null) rn jButton2 = new JButton();rn jButton2.setBounds(new Rectangle(96, 9, 60, 17));rn jButton2.setText("解码");rn rn return jButton2;rn rnrn /**rn * This method initializes jButton3 rn * rn * @return javax.swing.JButton rn */rn private JButton getJButton3() rn if (jButton3 == null) rn jButton3 = new JButton();rn jButton3.setBounds(new Rectangle(166, 9, 88, 17));rn jButton3.setText("批量编码");rn rn return jButton3;rn rnrn /**rn * This method initializes jButton4 rn * rn * @return javax.swing.JButton rn */rn private JButton getJButton4() rn if (jButton4 == null) rn jButton4 = new JButton();rn jButton4.setBounds(new Rectangle(263, 9, 88, 17));rnrn jButton4.setText("批量解码");rn rn return jButton4;rn rnrn /**rn * This method initializes jButton5 rn * rn * @return javax.swing.JButton rn */rn private JButton getJButton5() rn if (jButton5 == null) rn jButton5 = new JButton();rn jButton5.setBounds(new Rectangle(360, 9, 94, 17));rn jButton5.setText("选择文件");rn rn return jButton5;rn rnrn /**rn * This method initializes jTextField rn * rn * @return javax.swing.JTextField rn */rn private JTextField getJTextField() rn if (jTextField == null) rn jTextField = new JTextField();rn jTextField.setBounds(new Rectangle(133, 38, 303, 24));rn rn return jTextField;rn rnrn /**rn * This method initializes jTextField2 rn * rn * @return javax.swing.JTextField rn */rn private JTextField getJTextField2() rn if (jTextField2 == null) rn jTextField2 = new JTextField();rn jTextField2.setBounds(new Rectangle(133, 70, 303, 24));rn rn return jTextField2;rn rn rn rn /**rn * This method initializes jProgressBar rn * rn * @return javax.swing.JProgressBar rn */rn private JProgressBar getJProgressBar() rn if (jProgressBar == null) rn jProgressBar = new JProgressBar();rn jProgressBar.setBounds(new Rectangle(123, 146, 286, 20));rn jProgressBar.setString("内部显示");rn jProgressBar.setStringPainted(true);rn jProgressBar.setVisible(false);rn rn return jProgressBar;rn rnrn rn public void paint(Graphics g)rn super.paint(g);rn Toolkit tool=this.getToolkit(); rn Image innerImage=tool.getImage("picjiqimao.jpg"); rn g.drawImage(innerImage,0,0,660,700,0,0,1700,1300,Color.RED,this); rn rn rn public static void main(String[] args) rn test t=new test();rn t.setVisible(true);rn rnrnrnrnrn代码如上!rn我想为界面添加背景! 但为何背景添加后其它组件(按钮,文本筐)则无法显示rn请问如何解决,还有paintComponents在什么时候会自动调用?
《JFrame类中paint()方法的重绘》
我在学习界面的时候,对这些总是很模糊,现在好多了
JAVA 绘制的直线不显示
[code=java]rnimport java.awt.Color;rnimport java.awt.Graphics;rnrnimport javax.swing.JFrame;rnimport javax.swing.JPanel;rnrnpublic class TestPaintComponent extends JFrame rn public TestPaintComponent() rn add(new NewPanel());rn rnrn public static void main(String[] args) rn TestPaintComponent frame=new TestPaintComponent();rn frame.setTitle("TestPaintComponent");rn frame.setSize(600,400);rn frame.setLocationRelativeTo(null);rn frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);rn frame.setVisible(true);rn rnrnrnrnclass NewPanel extends JPanel rn protected void paintComponenet(Graphics g) rn super.paintComponent(g);rn g.setColor(Color.red);rn g.drawLine(0, 0, 100, 50);rn g.drawString("Banner", 0, 40);rn rnrn[/code]rnrn
JAVA的paint方法提问
[img=https://img-bbs.csdn.net/upload/201603/16/1458102777_637799.png][/img]rn[img=https://img-bbs.csdn.net/upload/201603/16/1458103073_396057.png][/img][img=https://img-bbs.csdn.net/upload/201603/16/1458103081_482182.png][/img]rn请问一下,为什么不加入paint()方法,显示不出来图片?(我已经在构造器中调用drawImage函数了,截图的时候我忘记取消注释了,这场在初始化的时候就应该显示照片的啊)。rnrnrn当我重写paint()函数以后,程序的执行会先调用drawImage函数一次,然后再调用paint()函数2次,才能将图片显示出来,这又是为什么?rnrn谢谢各位大神了!小弟刚刚入手java。
使用paint方法后显示不正常
如题,使用paint方法运行后显示为空白rn[url=http://img9.ph.126.net/gi3HM5R0jH30YE_aXUAI2g==/3100728343461870969.jpg][/url]rn当鼠标划过窗体时会显示一部分rn[url=http://img5.ph.126.net/NrsA1NvuTJW1kegjfADuFg==/1123648107046220975.jpg][/url]rn我是个新手,请各位多多指教!
java paint()方法的小问题
本人遇到了这样的一个问题:有两个程序,如下rnpackage TankClient;rnrnimport java.awt.Color;rnimport java.awt.Frame;rnimport java.awt.Graphics;rnrnpublic class TestPaint rn rn public void paint(Graphics g)rn Color c = g.getColor();rn g.setColor(Color.RED);rn g.fillOval(50,50,30,30);rn g.setColor(c);rn rn rn public void launchFrame ()rn Frame f = new Frame("tankwar");rn f.setSize(800,600);rn f.setLocation(150,200);rn f.setResizable(false);rn f.setVisible(true);rn rn public static void main(String[] args)rn new TestPaint().launchFrame();rn rnrnrn另外一个程序 是:rnpackage TankClient;rnrnimport java.awt.Color;rnimport java.awt.Frame;rnimport java.awt.Graphics;rnimport java.awt.event.WindowAdapter;rnimport java.awt.event.WindowEvent;rnrnpublic class TankClient extends Frame rn //定义窗口的宽和高,并把它们设为常量rn private static final int WIDTH = 800;rn private static final int HEIGHT = 600;rn rn Tank myTank = new Tank(50,50);rn rn public void paint(Graphics g)rn System.out.println("ok");rn Color c = g.getColor();rn myTank.draw(g);rn g.setColor(c);rn rn rn //创建一个窗口,并实现关闭功能rn public void launchFrame()rn setSize(WIDTH,HEIGHT);rn setBackground(Color.BLACK);rn setResizable(false);rn setLocation(250,150);rn addWindowListener(new WindowAdapter()rn public void windowClosing(WindowEvent e)rn System.exit(0);rn rn );rn setVisible(true);rn rn rn rn rn public static void main(String[] args)rn new TankClient().launchFrame();rn rnrn我想问的是为什么第一个程序不能在窗口里显示一个圆出来,而第二个却能呢,请高手指点迷津。
paint 绘制背景图片,怎么在把控件给添加到JFrame上面
我使用paint 方法绘制出了背景图片,但是我在jFrame上面就不能再添加我的按钮了,这个怎么办?
html5使用图像-绘制图像
使用图像 function draw(id){ var c=document.getElementById('canvas'); if(c==null) return false; var cxt=c.getContext("2d"); var img=new Image(); img.src="img/11.jpg"; // cxt.drawImage(img,0,0);//
使用pandas的DataFrame的plot方法绘制图像
使用了pandas的Series方法绘制图像体验之后感觉直接用matplotlib的功能好用了不少,又试用了DataFrame的方法之后发现这个更加人性化。 写代码如下:   1 from pandas import Series,DataFrame   2 from numpy.random import randn   3 import numpy as np   4 impo
使用Pandas的Series方法绘制图像
通常绘制二维曲线的时候可以使用matplotlib,不过如果电脑上安装了pandas的话可以直接使用Series的绘图方法进行图像的绘制。pandas绘制图像其实也是给予matplotlib的绘图功能处理相应的数据,最终绘制出相应的曲线。在图形对象创建并操作之后还需要调用matplotlib的图像显示方法才能够最终显示出绘制的图像。 编写代码如下:   1 import pandas as
Paint绘制文字用法
/** * 负责设置获取文字相关的 */ paint.setTextSize(50); paint.setUnderlineText(true); //是否有下划线和设置下划线。 paint.setStrikeThruText(true); //获取与设置是否有文本删除线。 //获取与设置字体类型。Android默认有四种字体样式:BOLD(加粗)、BOLD_ITALIC(加粗并倾
Paint绘制文字
//获得字符行间距 // mPaint.getFontSpacing(); //获得字符之间的间距 // mPaint.getLetterSpacing(); // mPaint.setLetterSpacing(letterSpacing)//设置 //设置文本删除线 // mPaint.setStrikeThruText(t
Paint绘制简单的进度条
paint也是画笔,可以再canvas上绘制任意的点、线、形、色等,熟练使用paint可以组装出很漂亮的自定义控件,下面用piant画了一个简单的加载进度 绘制的时候要注意文字的宽度和位置,而是使用paint的style,比如描边,填充等。先看布局文件和attrs属性代码 <?xml version="1.0" encoding="utf-8"?> <resources> <declare
绘制基础知识-canvas paint
先来看一下Canvas Canvas 用来提供draw方法的调用。绘制东西需要4个基本的组建:一个bitmap用来存放像素,一个canvas用来提供draw方法的调用(往bitmap里写入),原始绘制元素(e.g.Rect, Path, text,Bitmap), 一个paint。 看一下canvas的主要方法:canvas.save()保存canvas的状态,保存之后,可以调用canva
使用多边形绘制图像
利用遗传算法使用多边形绘制图像(JS版)
绘制图像案例(Java)
一、效果图 二、注意事项       1.图片格式要求:jpg(jpeg)、png、gif三种       2.注意文件的存放路径,本案例存放在images文件夹下 三、源代码 package test; import java.awt.Canvas; import java.awt.Graphics; import java.awt.Image; import javax.s...
Java绘制函数图像
Java刚开始学习,根据JFrame和JPanel以及Math类编写的小程序,抛砖引玉
图像化界面paint,repaint方法的总结
JAVA 画图中出现的paint()函数 问题:小弟刚学JAVA,有一个问题。以下是一段JAVA代码,它弹出了一个窗口,并在窗口上使用paint()画出矩形、椭圆、扇面等图形。但鉴于paint()并不在main()中执行,所以它会一次画完。现在我想让画图行为受用户控制,比如说,开始只有一个空白窗口。当用户输入1,画出矩形。用户输入2,擦掉矩形。用户输入3,画出椭圆。等等等等。 所以小弟应该如何做?...
使用优动漫PAINT高效绘制集中线的方法
我们平常看到的漫画,尤其是黑白漫中,通过集中线来强调表现方式是常用的手段,这也是漫画特有的表现方式。 有效的使用这种效果线,能有效推动故事情节发展,画面表现力也有显著提高。 在优动漫PAINT中,除了可以使用尺子工具辅助画出效果线以外,我们还可以通过专门的工具【集中线】工具组来绘制效果线。 在【图形】工具组下的【集中线】工具组中,有【稀疏集中线】、【密集集中线】等子工具,通过这些工具...
paint方法
请问一下。。paint与paintComponent这两个方法有什么区别??
java swing 中paint方法
[code=Java]import java.awt.BorderLayout;rnimport java.awt.Color;rnimport java.awt.Dimension;rnimport java.awt.Graphics2D;rnimport java.awt.RenderingHints;rnimport java.awt.Shape;rnimport java.awt.event.ActionEvent;rnimport java.awt.event.ActionListener;rnimport java.awt.geom.GeneralPath;rnimport java.util.Calendar;rnrnimport javax.swing.JFrame;rnimport javax.swing.JLabel;rnimport javax.swing.JPanel;rnimport javax.swing.Timer;rnrnrnpublic class ClockTest extends JFramern rn /**rn * rn */rn private static final long serialVersionUID = 1127815638909706067L;rnrn public ClockTest() rnrn this.setSize(400,430);rn this.setDefaultCloseOperation(EXIT_ON_CLOSE);rn init();rn this.setVisible(true);rn Timer timer = new Timer(1000, new ActionListener() rn rn @Overridern public void actionPerformed(ActionEvent e) rn // TODO Auto-generated method stubrn paintDigital((Graphics2D) getGraphics());rn rn );rn timer.start();rn rn JLabel label ;rn private void init() rn JPanel panel = new JPanel();rn panel.setPreferredSize(new Dimension(390,410));rn panel.setLayout(new BorderLayout());rn final int r = 170; // 表盘半径rn final int sr = 20; //刻度圆形半径rn rn final int secr = (int)(r * 0.8 );rn final int minr = (int)(secr * 0.8);rn final int hourr = (int)(minr * 0.8);rn this.getContentPane().add(panel);rn rn rn private int getW2() rn // TODO Auto-generated method stubrn return 180;rn rnrn private int getH2() rn // TODO Auto-generated method stubrn return 170;rn rnrn private int getCenterX2() rn // TODO Auto-generated method stubrn return 20 + r;rn rn int r = (int) ((getH2() < getW2() ? getH2() : getW2()) * 0.9); // 表盘半径rn private int getCenterY2() rn // TODO Auto-generated method stubrn return 20 + r;rn rn public void paintDigital(Graphics2D g2)rn// super.paint(g2);rn// Color oldColor = g2.getColor();rn// g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING , RenderingHints.VALUE_ANTIALIAS_ON);rn rn// paintScaleClock(g2, r, cx, cy, sr);rn final int r = (int) ((getH2() < getW2() ? getH2() : getW2()) * 0.9); // 表盘半径rn final int sr = (int) (r * 0.1); //刻度圆形半径rn final int secr = (int)(r * 0.8 );rn final int minr = (int)(secr * 0.8);rn final int hourr = (int)(minr * 0.8);rn int cx = (int) getCenterX2();rn int cy = (int) getCenterY2();rn Color oldColor = g2.getColor();rn rn g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING , RenderingHints.VALUE_ANTIALIAS_ON);rn rn /*rn *画表盘刻度. rn */rn for(int i = 0 ;i < 12; i++) rn int scalePx = cx + (int) Math.round(r * Math.cos(2 * Math.PI /12 * (i+1)));rn int scalePy = cy + (int) Math.round(r * Math.sin(2 * Math.PI /12 * (i+1)));rn g2.setColor(Color.BLUE);rn g2.fillOval(scalePx - sr/2, scalePy - sr/2, sr, sr);rn rn rn Calendar calendar = Calendar.getInstance();rn int hour = calendar.get(Calendar.HOUR);rn int min = calendar.get(Calendar.MINUTE);rn int sec = calendar.get(Calendar.SECOND);rn /*rn * 画小时指针.rn */rn rn double minOfHour = min / 60 ;rn double hourdu = 2 * Math.PI * hour / 12 + 2 * Math.PI /12 * min / 60;rn double innerLeftHour = hourdu - Math.PI / 5;rn double innerRightHour = hourdu + Math.PI / 5;rn long hourX = cx;rn long hourY = cy;rn long hourLeftInnerX = cx;rn long hourLeftInnerY = cy;rn long hourRightInnerX = cx;rn long hourRightInnerY = cy;rn rn hourX = cx + Math.round(hourr * Math.cos(hourdu - Math.PI/2));rn hourY = cy + Math.round(hourr * Math.sin(hourdu - Math.PI/2));rn hourLeftInnerX = cx + Math.round(hourr * 0.2 * Math.cos(innerLeftHour - Math.PI/2));rn hourLeftInnerY = cy + Math.round(hourr * 0.2 * Math.sin(innerLeftHour - Math.PI/2));rn hourRightInnerX = cx + Math.round(hourr * 0.2 * Math.cos(innerRightHour - Math.PI/2));rn hourRightInnerY = cy + Math.round(hourr * 0.2 * Math.sin(innerRightHour - Math.PI/2));rn rn GeneralPath hourShape = new GeneralPath();rn hourShape.moveTo(cx, cy);rn hourShape.lineTo(hourLeftInnerX, hourLeftInnerY);rn hourShape.lineTo(hourX, hourY);rn hourShape.lineTo(hourRightInnerX, hourRightInnerY);rn// hourShape.lineTo(cx, cy);rn hourShape.closePath();rnrn rn g2.setColor(Color.BLUE);rn g2.fillOval((int)(cx - hourr * 0.1), (int)(cy - hourr * 0.1) , (int)(hourr * 0.2), (int)(hourr * 0.2));rn g2.fill(hourShape);rn g2.setColor(oldColor);rn rn rn /*rn *画分钟指针,秒指针. rn */rn rn double secdu = 2 * Math.PI * sec / 60;rn double mindu = 2 * Math.PI * min / 60;rn double innerLeftMin = mindu - Math.PI / 10;rn double innerRightMin = mindu + Math.PI / 10;rn double innerLeftSec = secdu - Math.PI /15;rn double innerRightSec = secdu + Math.PI / 15;rn long secX = cx;rn long secY = cy;rn long minX = cx;rn long minY = cy;rn long minLeftInnerX = cx;rn long minLeftInnerY = cy;rn long minRightInnerX = cx;rn long minRightInnerY = cy;rn long secLeftInnerX = cx;rn long secLeftInnerY = cy;rn long secRightInnerX = cx;rn long secRightInnerY = cy;rn rn secX = cx + Math.round(secr * Math.cos(secdu - Math.PI/2));rn secY = cy + Math.round(secr * Math.sin(secdu - Math.PI/2));rn minX = cx + Math.round(minr * Math.cos(mindu - Math.PI/2));rn minY = cy + Math.round(minr * Math.sin(mindu - Math.PI/2));rn rn minLeftInnerX = cx + Math.round(hourr * 0.2 * Math.cos(innerLeftMin - Math.PI/2));rn minLeftInnerY = cy + Math.round(hourr * 0.2 * Math.sin(innerLeftMin - Math.PI/2));rn minRightInnerX = cx + Math.round(hourr * 0.2 * Math.cos(innerRightMin - Math.PI/2));rn minRightInnerY = cy + Math.round(hourr * 0.2 * Math.sin(innerRightMin - Math.PI/2));rn rn secLeftInnerX = cx + Math.round(hourr * 0.2 * Math.cos(innerLeftSec - Math.PI/2));rn secLeftInnerY = cy + Math.round(hourr * 0.2 * Math.sin(innerLeftSec - Math.PI/2));rn secRightInnerX = cx + Math.round(hourr * 0.2 * Math.cos(innerRightSec - Math.PI/2));rn secRightInnerY = cy + Math.round(hourr * 0.2 * Math.sin(innerRightSec - Math.PI/2));rn rn GeneralPath minShape = new GeneralPath();rn minShape.moveTo(cx, cy);rn minShape.lineTo(minLeftInnerX, minLeftInnerY);rn minShape.lineTo(minX, minY);rn minShape.lineTo(minRightInnerX, minRightInnerY);rn minShape.lineTo(cx, cy);rn minShape.closePath();rn rn GeneralPath secShape = new GeneralPath();rn secShape.moveTo(cx, cy);rn secShape.lineTo(secLeftInnerX, secLeftInnerY);rn secShape.lineTo(secX, secY);rn secShape.lineTo(secRightInnerX, secRightInnerY);rn secShape.lineTo(cx, cy);rn secShape.closePath();rn rn g2.setColor(Color.GREEN);rn g2.fillOval((int)(cx - hourr * 0.08), (int)(cy - hourr * 0.08), (int)(hourr * 0.16), (int)(hourr * 0.16));rn g2.fill(minShape);rn// g2.drawLine(cx, cy, (int)minX, (int)minY);rn g2.setColor(Color.RED);rn g2.fillOval((int)(cx - hourr * 0.06), (int)(cy - hourr * 0.06) , (int)(hourr * 0.12), (int)(hourr * 0.12));rn g2.fill(secShape);rn// g2.drawLine(cx, cy, (int)secX, (int)secY);rn rn rn rn rn public Shape getHourShape(int cx, int cy, int r, int innerr, int width) rn Shape shape = new GeneralPath();rn rn return shape;rn rn rn public static void main(String[] args) rn new ClockTest();rn rn rnrnrn[/code] 可以运行看下效果。因为其他的原因,只能修改paintDigital方法中的内容.不能调用repaint或者父类的方法.
高质量的虚拟视点图像的绘制方法
关于虚拟视点的绘制方法 保证生成质量相对优质
Paint 方法
[img=https://img-bbs.csdn.net/upload/201405/29/1401326936_339690.jpg][/img]为什么第一次显示为[img=https://img-bbs.csdn.net/upload/201405/29/1401326966_703973.jpg][/img]重新显示的就是这样[img=https://img-bbs.csdn.net/upload/201405/29/1401326996_810135.jpg][/img]
Paint方法
在云课堂里面看到这么个小游戏项目,着手自己做的时候,却出现了问题,理由是我怎么也无法调用出paint()方法,后来经过网友与室友的帮助下,我逐渐理解了paint()方法的“调用”。 package liu.shen.util; import java.awt.*; import java.awt.Font; import java.awt.Frame; import java.a
如何在JFrame或JPane上面加PAINT方法。(急)
import java.awt.Color;rnimport java.awt.Graphics;rnrnimport javax.swing.*;rnrnpublic class Test extends JFramernrn public void launchJFrame()rn this.setLocation(100, 100);rn this.setSize(500, 400);rn getContentPane().setBackground(Color.green);rn rn public static void main(String[] args) rn Test t=new Test();rn t.launchJFrame();rn t.setVisible(true);rn rnrn//这是我设计的一个JFrame,背景色是绿色,想在上面画一个圆。(红色)rn可是什么paint(Graphics g)总是错。。请教高手。。。。。
如何通过一个JFrame对象来重写其中的paint方法。
现在有一个RootPaneUI类等其他类都可以用,只是没有JFrame类。有的是JFrame类的一个对象,现在要重写JFrame类的paint()方法,请问可以怎么办?
重写paint()方法后Frame背景图片不显示
用JFrame做rn[code=Java]URL url1 = urlload.findResource("Images/background.jpg");rn Image img1 = Toolkit.getDefaultToolkit().getImage(url1);rn backgroundLabel = new JLabel(new ImageIcon(img1));rn this.getLayeredPane().add(backgroundLabel, new Integer(Integer.MIN_VALUE));rn backgroundLabel.setBounds(0,0,800,600);rn ((JPanel)getContentPane()).setOpaque(false);rn setVisible(true);rn[/code]rn上边代码能正常显示出背景图片来,但是我犹豫要画别的东西,启动repaint线程,重写了paint()方法,在paint()方法里面另外画了些图片啊之类的,可是我之前的背景图片没有了,请教需要改什么代码??
JFrame显示
我设计的程序里的Bug:rn触发一个事件的时候调用一个JFrame!rn如点击该学生信息时当多次触发这个事件,就调用同一个JFrame并显示多个该学生界面。rn如何屏蔽这样的问题。rn如果该JFrame已显示,不再调用显示同一界面。rn
自定义View之Paint - 绘制文本
Paint 绘制文本
Android Paint绘制边框注意事项
如果需要为一张图片添加边框可以采用自定义控件的方式,重写onDraw()方法,在上面绘制一个矩形框。 这里出现了问题,记录下,当使用Paint绘制矩形的时候,如果不设置Style会有如下效果。 1)默认不设置 或者paint.setStyle(Paint.Style.FILL); 或者paint.setStyle(Paint.Style.FILL_AND_STROKE); 可以看到图...
Qt绘制系统(Paint System)
英文介绍 Qt的绘制系统可以使用同一套的API在屏幕和打印设备上进行绘制,主要是基于QPainter, QPaintDevice, 和 QPaintEngine 这几个类。 QPainter用于执行绘制操作,QPainterDevice则是一个作为QPainter绘制用的二维抽象空间,而QPaintEngine提供painter绘制在不同类型的device上所用到的接口。QPaintEngin
QRadialGradient 使用绘制过滤图像
QRectF rect(boundingRect()); QPen pen; pen.setWidthF(0); pen.setColor(m_color); painter->setPen(pen); QRadialGradient g(rect.width()/2,rect.height()/2,rect.width()/2,rect.wi
使用多边形绘制图像(MATLAB)
上一篇博客介绍了实现的原理以及自己的使用JS实现的版本,其实在一开始自己并不是使用JS使用,而使用MATLAB,最后实现的效果不是很好(运行时间还是相对较长),但是自己还是从中学到了诸如MATLAB程序优化等方面的知识。
使用matplotlib绘制图像初步
绘制图形曲线,我想到的工具一般是MATLAB。不过,鉴于软件的昂贵价格个人折腾显然是买不起的。不过现在开源软件甚至是自由软件给了我们很多选择,python则为很多便捷的功能实现提供了基础。这样,图形绘制时matplotlib便成了我的首选。 在此之前,我确实是使用这工具绘制过图像,但是之前并没有好好研究总结过。一般是需要的时候直接去官网看一下相册中的图片集,选择跟我自己所需相似的图片直接拷贝代码
JAVA绘制函数图像工具
JAVA绘制函数图像工具,学校的一个java大作业
Paint 使用
Paint 用法先申明一下,这个只是自己想对paint有个整体滴认识,所以才整理出来滴,里面的链接其实都是同一个, 比较难滴地方,都是参考这个大神滴文章来进行滴。。。 看到这里,已经实现了引流,哈哈哈,你们可以去看大神滴文章了。1. 关于text的方法1.1 ascent(都是直接翻译滴,其实就是返回到基线的距离)//根据当前的字体和文字大小返回上方(负)基线(上升)的距离。 float as
自定义View——Paint 之 文本绘制
文本相关操作 对于文本相关的API,有很多,使用也很简单,这里简单罗列一下: setTextSize(float textSize) 设置文字大小 setUnderlineText(boolean underlineText) 设置下划线 setStrikeThruTex...
相关热词 c# stream 复制 android c# c#监测窗口句柄 c# md5 引用 c# 判断tabtip 自己写个浏览器程序c# c# 字符串变成整数数组 c#语言编程写出一个方法 c# 转盘抽奖 c#选中treeview