2014-11-19 2 views
0

Я буду использовать NetBeans для создания своего приложения. Что мне нужно знать, это ...Как сохранить выбор пользователя в приложении Java (NetBeans)?

Если я добавлю меню настройки принтера, которое будет использоваться для отображения диалогового окна печати и позволит пользователю выбрать конкретный принтер для определенной опции (например, один принтер для квитанции, один принтер для отчетов и т. д. (и пользователь может выбрать один и тот же принтер для всех параметров, если это необходимо)), как я могу сохранить выбор принтера пользователя и получить доступ к нему позже?

Например, я могу выбрать распечатку квитанции, когда пользователь завершит ввод транзакции и нажимает «Сохранить». Принтер, на который отправлен документ, должен быть принтером, выбранным в меню настройки принтера. Как я могу создать свое приложение таким образом, чтобы это разрешалось?

Как всегда, заблаговременно за любые полезные ответы.

+0

Просмотрите класс Preferences (java.util.prefs). –

+0

Взгляните на [этот вопрос] (http://stackoverflow.com/questions/19556932/how-to-save-the-state-of-my-minesweeper-game-and-then-load-it/19557052#19557052) для обсуждения возможных решений ... – MadProgrammer

ответ

0

Если вы пытаетесь сохранить выбор принтера в течение нескольких сеансов, я бы рекомендовал хранить информацию в виде таблицы в базе данных. Каждый выбор принтера для данного «варианта» (возможно, более описательный термин должен быть выбран) сохраняется как строка в базе данных, например User: (внешний ключ для таблицы пользователя), Цель: (внешний ключ для таблицы целей), Принтер: (адрес используемого принтера?), Необязательно имя принтера для отображения.

+0

Это кажется идеальным решением. Я мог бы просто сохранить адрес (в основном местоположение) принтера. Но как я могу это назвать в своей программе? Например, скажем, я хочу напечатать панель. Когда я использую функцию print(), где я буду вводить код и что бы ввести? – Ryan

+0

Я выяснил обходное решение. Во-первых, я создал ComboBox с выбором принтера для пользователя. Затем я установил индекс службы печати (из массива PrintServices) в тот же индекс, что и тот, который выбран в ComboBox (поскольку ComboBox будет иметь одинаковые варианты в том же порядке, что и массив служб печати). Это позволило мне печатать на любом принтере, который я выбрал, без необходимости сначала отображать диалог печати, что я и хотел. В принципе, если пользователь вводит информацию и нажимает «Сохранить», я хочу, чтобы документ печатался сразу, без диалога каждый раз. – Ryan

Смежные вопросы