|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
08.05.2010, 12:05 | #1 |
Регистрация: 18.04.2010
Сообщений: 5
|
Наследование
Мне необходимо чтобы от фигуры квадрат наследовался перечеркнутый квадрат. Я так понимаю мне надо сначала создать абстрактный класс с методом для прорисовки, а в производных классах уже реализовать этот метод. Но я не знаю как передать в этот метод параметр Graphics g, который необходимый для рисования. Помогите пожалуйста!
|
08.05.2010, 16:19 | #2 |
Пользователь
Регистрация: 20.11.2009
Сообщений: 46
|
Можно попробовать присвоить статической переменной G1 типа Graphics значение g метода paint. Но это придется делать постоянно.
Иначе можно сделать getGraphics() в туже переменную G1 (точно не помню как) и использовать ее возможно.
Runtime.getRuntime().gc() ява - один из самых чистых языков.
|
08.05.2010, 16:52 | #3 |
Регистрация: 18.04.2010
Сообщений: 5
|
Вот,например:
public class Square { public void draw(Graphics g) { ... } } public class StrokedSquare extends Square { public void draw(Graphics g) { ... } } public static void main(String[] args) { StrokedSquare SS=new StrokedSquare(); SS.draw(???) ..... } Как передать на место (???) параметр Graphics g?? |
08.05.2010, 19:33 | #4 |
Участник клуба Подтвердите свой е-майл
Регистрация: 19.11.2007
Сообщений: 1,022
|
Код:
|
08.05.2010, 20:01 | #5 |
Регистрация: 18.04.2010
Сообщений: 5
|
выдает ошибку на команде Graphics g = getGraphics();
Пишет о не совместимости типов. |
08.05.2010, 20:23 | #6 |
Участник клуба Подтвердите свой е-майл
Регистрация: 19.11.2007
Сообщений: 1,022
|
|
08.05.2010, 20:29 | #7 |
Регистрация: 18.04.2010
Сообщений: 5
|
Может можно как-то по-другому организовать?
|
08.05.2010, 22:35 | #8 |
Eclipse Foundation
Старожил
Регистрация: 19.09.2007
Сообщений: 2,604
|
Вы что, гоните?
Делаете класс Square - пишете ему метод paint, который принимает Graphics и рисует квадрат, потом пишете класс StrokedSquare - перегружаете ему мето paint, где добавляете рисование еще одной линии. Рисовать можно только в таких приложениях, где есть контекст рисования. В консольных не пытайтесь такое делать. Сделайте апплет и рисуйте себе в методе paint. Или создайте оконное приложение и рисуйте в окне. Последний раз редактировалось MaTBeu; 08.05.2010 в 22:44. |
09.05.2010, 11:39 | #9 |
Регистрация: 18.04.2010
Сообщений: 5
|
А потом при вызове метода paint что указать для параметра g??
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Наследование | lolopolosko | Помощь студентам | 1 | 21.11.2009 17:17 |
Наследование | alex_triton | Общие вопросы C/C++ | 0 | 19.10.2009 20:25 |
Наследование | beregok | Общие вопросы C/C++ | 1 | 04.07.2009 22:39 |
Наследование | z3rg | Общие вопросы C/C++ | 9 | 30.04.2009 20:43 |
Наследование | Кирилл13 | Общие вопросы C/C++ | 1 | 11.11.2008 14:47 |