Я искал много источников, но до сих пор не могу найти достойного объяснения. Почему я должен использовать его, какова его «цель и почему она отличается от JPanels и т. Д.?Что такое Canvas в AWT?
ответ
Специальность Canvas состоит в том, что, подобно окну, он может обеспечивать индивидуальную двойную буферизацию с аппаратным ускорением и перелистывание страниц. См. BufferStrategy.
Холст для рисования, в основном. Он также служит панелью для создания пользовательского компонента на основе AWT, но, в отличие от Panel, он не может содержать другие компоненты.
С моей точки зрения, Canvas
- это только версия AWT JComponent Swing. Вы не должны использовать его напрямую, если только вы не делаете чистую программу AWT. You can find more info here.
public class Canvas
extends Component
implements Accessible
холста компонент представляет собой пустую прямоугольную область экрана, на которую приложение может рисовать или с которого приложение может входные ловушки событий от пользователя. Приложение должно подклассифицировать класс Canvas, чтобы получить полезные функции, такие как создание настраиваемого компонента. Метод рисования должен быть переопределен для выполнения пользовательской графики на холсте.
Холст для рисования, в основном. Он также служит панелью для создания пользовательского компонента на основе AWT, но, в отличие от Panel, он не может содержать другие компоненты.
- 1. Что такое AWT-Windows thread?
- 2. Что такое AWT-эквивалент JFrame.setDefaultCloseOperation?
- 3. Canvas class in awt
- 4. Что такое идентификатор SIS в Canvas Lms
- 5. Что такое SWT-эквивалент MouseMotionListener, который находится в AWT?
- 6. Что такое возврат к тегу canvas HTML5?
- 7. Applet AWT Canvas не обновляет графику
- 8. Матрица точки рисования слишком медленная в Java AWT Canvas
- 9. Что такое эквивалент объекта canvas Java в C#?
- 10. Render a Java AWT canvas для установки на экран
- 11. Что такое cufon и canvas и как их переписать
- 12. Java AWT: настройка фона Canvas меняет фон для всего кадра
- 13. что такое различие между facebook canvas url и secure canvas url
- 14. Занято в AWT
- 15. Что такое iOS-эквивалент холста?
- 16. Как нарисовать линию в javascript? Что такое свинг/awt? Нужно ли загружать их?
- 17. Что такое семантическое событие в Java?
- 18. AWT компоненты в полноэкранном эксклюзивном режиме
- 19. Как заполнить все окно в awt
- 20. Java AWT Тяжелый холст
- 21. Использование JSplitPane с компонентом AWT
- 22. Что такое трансформация и что такое Transform?
- 23. Что такое "?" делать? Что такое __FILE__?
- 24. Что такое скрипка и что такое DL?
- 25. Что такое PHPCI - что такое сборка?
- 26. Что такое Dim, что такое Факт?
- 27. Сериализация компоненты Swing/AWT
- 28. Что такое структура разработки? Что такое IDE?
- 29. Что такое поток? Что такое `initialize`?
- 30. Что такое std :: __ scan_keyword?
Вопрос, на который я ссылался в своем ответе, говорит, что вы не должны использовать его в приложении Swing. Согласны ли вы с этим? –
@tieTYT: Canvas, вероятно, менее полезен в приложении Swing, потому что Swing предоставляет собственную двойную буферизацию. (Объект Graphics, переданный методам paintComponent, опирается на BufferedImage, который позже появляется на экране.) Также существует проблема, что компоненты Swing не могут располагаться перед компонентами AWT. Swing menus & tooltips обычно не смогут рисовать поверх холста, но вы можете использовать JPopupMenu.setDefaultLightWeightPopupEnabled и ToolTipManager.setLightWeightPopupEnabled, чтобы исправить это. Кроме того, вы можете, конечно, использовать Canvas в Swing, если хотите. – Boann
@tieTYT См. Также [Смешивание тяжеловесных и легких компонентов] (http://www.oracle.com/technetwork/articles/java/mixing-components-433992.html). –