Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Проблема Java NetBeans

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Компилируемые языки] >> Проблема Java NetBeans
Имя
Сообщение << Старые топики   Новые топики >>
Проблема Java NetBeans - 2009-01-26 08:35:07.316666   
IceBreakeR

Сообщений: 2
Оценки: 0
Присоединился: 2009-01-26 08:07:16.623333
Такая вот проблема… Не могу избавиться от затирания, нарисованного, изображения на компоненте Canvas. Пытался переопределить метод формы Paint(Graphics g) ниче хорошего из этого не вышло. Наследовал от Canvas класс и там пробовал переопределить метод paint(Graphics g) ничего не получилось (хотел что-то вроде TImage в C++ Builder).

И еще подскажите как устранить мерцания при прорисовке (Ну типа двойного буфера DoubleBuffered) 8|
Post #: 1
RE: Проблема Java NetBeans - 2009-01-26 18:35:38.306666   
IceBreakeR

Сообщений: 2
Оценки: 0
Присоединился: 2009-01-26 08:07:16.623333
Первую проблему решил
Всего-то надо было унаследовать Canvas и переопределить метод Paint
import java.awt.*; import java.awt.Image; public class MCanvas extends Canvas { private Image img; //здесь храним картинку public MCanvas () { super(); super.setSize(100, 100); } public void setImage(Image Img) { this.img=Img; } @Override public void paint(Graphics g) { if(this.img!=null) { g.drawImage(img, 0, 0, this); } } /* @Override public void updаtе(Graphics g) { if(this.img!=null) { g.drawImage(img, 0, 0, this); } }*/ }

И в классе формы
public class FormMap extends javax.swing.JFrame { /** Creates new form FormMap */ public FormMap() { initComponents(); this.setSize(400, 300); this.img=this.createImage(400, 300); this.canvas=new MCanvas(); this.canvas.setSize(400, 300); this.canvas.setImage(img); Graphics g=this.img.getGraphics(); this.map=new TMap(10,10,20); this.view=new MapView(this.map,g); this.add(this.canvas); this.view.show(); } public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new FormMap().setVisible(true); } }); } // Variables declaration - do not modify private javax.swing.JDialog jDialog1; private javax.swing.JFileChooser jFileChooser1; // End of variables declaration private TMap map; private MapView view; private MCanvas canvas; private Image img;
А задача с двойным буфером остается актуальной
Post #: 2
Страниц:  [1]
Все форумы >> [Компилируемые языки] >> Проблема Java NetBeans







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.