Как использовать выбор операционной системы в приложении Java? [Дубликат]

Я решил эту проблему в своем приложении C - вот как я это сделал:

  1. Цитата из форумов mysql: Эта ошибка возникает, когда вы завершаете свой запрос разделителем с запятой внутри применение . Хотя для завершения запроса с разделителем с запятой при выполнении его из командной строки или в браузере запроса удалите разделитель из запроса внутри приложения.
  2. После выполнения моего запроса и обработки результатов [C API: mysql_store_result()], я перебираю любые дальнейшие потенциально ожидающие результаты, возникающие при выполнении нескольких операторов SQL, таких как два или более оператора select (назад назад, не имея дело с результатами). Дело в том, что мои процедуры не возвращают несколько результатов, но база данных не знает, что до выполнения: [C API: mysql_next_result()]. Я делаю это в цикле (для хорошей меры), пока не вернет ненулевое значение. Вот когда текущий обработчик подключений знает, что можно выполнить другой запрос (я кэширую свои обработчики, чтобы минимизировать накладные расходы на соединение). Это цикл, который я использую:
    for(; mysql_next_result(mysql_handler) == 0;) 
      /* do nothing */;
    

Я не знаю PHP, но я уверен, что у него что-то похожее.

12
задан Dan 4 July 2017 в 15:21
поделиться

4 ответа

Вместо этого используйте старый java.awt.FileDialog:

new java.awt.FileDialog((java.awt.Frame) null).setVisible(true);
16
ответ дан Mattias Isegran Bergander 15 August 2018 в 14:40
поделиться
  • 1
    Спасибо! Я буду использовать это! Я никогда не думал о компонентах из java.awt.*. – mattbdean 24 May 2012 в 23:16
  • 2
    Ну, мы часто думали о них много в тот день, пока не существовало качели. :) – Mattias Isegran Bergander 24 May 2012 в 23:17
  • 3
    Хотя этот ответ довольно старый: я бы не рекомендовал использовать диалог файла Awt. Он разбит на Linux и Mac, и Oracle больше не собирается его исправлять. Таким образом, если вы не ориентируетесь только на пользователей Window, это не очень хорошая идея. Кроме того, JFileChooser с естественным внешним видом выглядит почти идентично в Windows. – Veluria 9 April 2015 в 20:03
  • 4
    Хотя это правда @Aru JFileChooser даже с естественным видом довольно далек от исходного выбора файлов по внешнему виду и функциональности и медленнее (по крайней мере, раньше). Я считаю, что в некоторых случаях я могу скомпрометировать окна и использовать их. – Mattias Isegran Bergander 13 April 2015 в 20:40
  • 5
    Эта реализация не позволяет вам предоставлять фильтр файлов в Windows. Например, вы не можете заставить диалог показывать только файлы * .jpg. Насколько я вижу из документов Java 9, он все еще не реализован. Вы знаете какие-либо другие API для этого? – Ivan Nikitin 5 October 2016 в 09:07

GMail - это веб-приложение, которое в конечном итоге полагается на браузер, чтобы показать этот компонент. Теперь хорошим решением является использование Native Look & amp; Feel системы, которая обеспечивает JFileChooser, очень похожее на то, что вы показываете:

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

enter image description here [/g0]

EDIT: решение Pulsar еще лучше, поскольку оно обеспечивает точный диалог, который вы ищете. Я не уверен, что он предоставляет все функции JFileChooser.

4
ответ дан Guillaume Polet 15 August 2018 в 14:40
поделиться

Вы можете попробовать использовать JFileChooser, но при этом выглядеть и чувствовать себя как внешний вид платформы:

    try {
        UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    }catch(Exception ex) {
        ex.printStackTrace();
    }

И это сделает все компоненты swing более приятными!

8
ответ дан Juan Alberto López Cavallotti 15 August 2018 в 14:40
поделиться

Компоненты SWT всегда выглядели теми же стилями, что и в текущей ОС. Вы можете увидеть некоторые примеры:

Предполагалось, что из версии 7 Java стили Swing будут больше похожими на операционные системы, но могут видеть это в Java 8.

3
ответ дан Paul Vargas 15 August 2018 в 14:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: