java - I'd like to draw pixels on a window with mouse input -


i've done days of searching way draw pixels window in java mouse capture. i'm looking framework can plug in. seems simple... appreciated.

(edit) here non-working code.

public class base extends jpanel implements mousemotionlistener {      public static void main(string[] args) {         new base();     }      final static int width = 800;     final static int height = 600;     bufferedimage img;     base() {         img = new bufferedimage(width, height, bufferedimage.type_int_argb_pre);         jframe frame = new jframe();         frame.addmousemotionlistener(this);         frame.add(this);         frame.setsize(width, height);         frame.setenabled(true);         frame.setvisible(true);         frame.setdefaultcloseoperation(jframe.exit_on_close);     }      @override     public void mousedragged(mouseevent e) {     }      @override     public void mousemoved(mouseevent e) {         graphics g = img.getgraphics();         g.drawrect(1, 1, width - 2, height - 2);         g.dispose();         repaint();     }     @override      public void paintcomponent(graphics g) {          g.drawimage(img, 0, 0, null);     }  } 

enter image description here

see comments in code.

import java.awt.*; import java.awt.event.*; import java.awt.image.*; import javax.swing.*;  public class base extends jpanel implements mousemotionlistener {      public static void main(string[] args) {         new base();     }      final static int width = 400;     final static int height = 300;     bufferedimage img;     base() {          img = new bufferedimage(width, height,              bufferedimage.type_int_argb_pre);         // in preference setting frame size..         setpreferredsize(new dimension(width, height));         jframe frame = new jframe();         this.addmousemotionlistener(this); // instead of frame         frame.add(this);         //frame.setsize(width, height);  instead...         frame.pack();         //frame.setenabled(true);  redundant         frame.setvisible(true);         frame.setdefaultcloseoperation(jframe.exit_on_close);  // call!     }      @override     public void mousedragged(mouseevent e) {     }      @override     public void mousemoved(mouseevent e) {         graphics g = img.getgraphics();         g.setcolor(color.red);  // set color         g.drawrect(1, 1, width - 2, height - 2);          // ugly         g.setcolor(color.blue);         point p = e.getpoint();         g.filloval(p.x,p.y,5,5);          g.dispose();         repaint();     }     @override     public void paintcomponent(graphics g) {          g.drawimage(img, 0, 0, null);     } } 

Comments

Popular posts from this blog

c# - SharpSVN - How to get the previous revision? -

c++ - Is it possible to compile a VST on linux? -

url - Querystring manipulation of email Address in PHP -