Получить ввод с клавиатуры с помощью Canvas - PullRequest
1 голос
/ 12 декабря 2010

Я хочу создать приложение Upwords для рабочего стола, и поэтому я считаю, что игровой стол должен отображаться в виде холста. В начале игры я хочу попросить пользователя высказать мнение о игроках, которые будут играть, но у меня нет никаких идей. Не могли бы вы помочь мне в этом?

Кроме того, если есть идеи для реализации лучше, чем использовать canvas, я был бы рад вас услышать.

Заранее спасибо.


Нет, это не мое первое приложение с графическим интерфейсом, но у меня очень мало опыта. Я думаю, что это хорошая идея, чтобы создать свой собственный класс, но я не был уверен, потому что я хочу использовать GUI Builder (сроки), и в прошлом У меня были некоторые проблемы с этим. Я попробую. Для ввода я подумал о JDialog, но мне нужно смоделировать мобильную среду, поэтому подсказка должна отображаться на «экране» (холст в нашем случае).

1 Ответ

3 голосов
/ 12 декабря 2010

У вас довольно широкий вопрос, и я предполагаю, что это ваша первая (или одна из ваших первых) графических программ на Java. Вместо использования компонентов AWT (таких как Canvas) я настоятельно рекомендую использовать Swing или любую другую графическую библиотеку. Я бы начал с просмотра документации по javax.swing.JFrame . Вы, вероятно, в конечном итоге создадите пользовательский компонент (расширяющий JComponent?) И переопределите его метод paintComponent () для предоставления пользовательской графики своего «игрового стола».

Что касается пользовательского ввода в начале вашей игры, вы можете захотеть взглянуть на диалоговое окно. Посмотрите документацию для javax.swing.JOptionPane , которая может создавать широкий спектр простых диалоговых окон для сбора пользовательского ввода, автоматически обрабатывая ввод с клавиатуры.

Существует множество программ на языке Java Swing типа Hello World, которые могут помочь вам показать, как создать простое приложение Swing. Учебные руководства по Java - хорошее место для начала.

Удачи!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...