Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / JavaFX или Swing? / 21 сообщений из 21, страница 1 из 1
18.12.2014, 19:35
    #38837527
Alexey Kuznetsov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
Необходимо написать десктоп утилитку с GUI средней сложности (метки, кнопки, чекбоксы, комбобоксы). Но так же потребуется дерево и(или) таблица. Пока дизайн еще не до конца продуман.

Должно работать на JRE 7 из коробки (без внешних зависимостей по возможности).

Стою перед дилеммой: что выбрать JavaFX или Swing?
За JavaFX вроде как будущее, но как я понял до вменяемого состояния ее допилили только в java 8? (так ли это?)
Swing я знаю вдоль и поперек, но хочется уже и JavaFX пощупать.

Стоит ли заюзать JavaFX в моем случае?
...
Рейтинг: 0 / 0
18.12.2014, 20:40
    #38837573
Щиче
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
Alexey Kuznetsov, да Java FX в полностью готовом виде начинается с восьмерки. Но в отличие, от серверов сделать upgrade не проблема. Попробуйте, расскажете нам
...
Рейтинг: 0 / 0
18.12.2014, 22:04
    #38837613
avp.mk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
Alexey KuznetsovСтоит ли заюзать JavaFX в моем случае?
Если 7, то скорее нет.
В 7 у java fx были баги, которые лечились весьма не тривиальными приседаниями (или не лечились вообще). В 8 вроде починили (но я мало с 8 работал).
API, конечно, у java fx лучше, приятней и типобезопасней, но местами сырой (это про 2.2 сейчас, 8 ещё не распробовал).

А почему не хотите 8 использовать? По мне так вообще (почти) никаких компромисов - перфоманс выше, платформа\язык удобней, работает даже на winxp.
...
Рейтинг: 0 / 0
19.12.2014, 05:34
    #38837711
Alexey Kuznetsov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
avp.mkА почему не хотите 8 использовать? По мне так вообще (почти) никаких компромисов - перфоманс выше, платформа\язык удобней, работает даже на winxp.

Требование заказчика. Основной продукт работает на 7-ке, а тут мы будем требовать для какой-то утилитки ставить 8-ку.
...
Рейтинг: 0 / 0
19.12.2014, 09:07
    #38837755
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
Alexey Kuznetsov,

У меня под Java 7 небольшая утилита на JavaFX написана. 3 скрина, редактируемые гриды, списки. Совсем не жалею что взял JavaFX. Swing уже в печенках сидит. Свойства очень круто подлечили, когда в одном месте что-то меняется, связанные бины и GUI автоматически пересчитывают состояние. На PropertyChangeEvent такое писал бы ещё пару дней сверху. SceneBuilder вполне себе порадовал адекватным менеджером компановки.

Разочарований было ровно два
1) В Java 7 нет готовых popup диалогов для сообщений (типа JOptionPane). Пришлось накнопать кривенький велосипед. Так как штука крайне нужная для адекватного GUI.
2) Геморрой при обмене бинами с сервером:
http://www.sql.ru/forum/1133207/podskazhite-po-javafx
...
Рейтинг: 0 / 0
19.12.2014, 09:21
    #38837762
Alexey Kuznetsov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
Blazkowicz,
Ждал вашего коментария :)
Если не сложно, скинь в личку или сюда скриншот с гридом?
А что за проблема с диалогами? Вроде же там есть Dialogs какие-то?
И как заборол?
...
Рейтинг: 0 / 0
19.12.2014, 09:27
    #38837769
danatriel
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
Alexey Kuznetsov,

на счет диалогов - не пробовали библиотеку controlsfx? Вроде вполне вменяемо, правда немного сложновато для messagebox'а)
...
Рейтинг: 0 / 0
19.12.2014, 09:37
    #38837788
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
danatrielAlexey Kuznetsov,

на счет диалогов - не пробовали библиотеку controlsfx? Вроде вполне вменяемо, правда немного сложновато для messagebox'а)
It has been developed for JavaFX 8.0 and beyond ?
...
Рейтинг: 0 / 0
19.12.2014, 09:39
    #38837790
Alexey Kuznetsov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
BlazkowiczdanatrielAlexey Kuznetsov,
на счет диалогов - не пробовали библиотеку controlsfx? Вроде вполне вменяемо, правда немного сложновато для messagebox'а)
It has been developed for JavaFX 8.0 and beyond ?

Да, мне видимо не подойдет, так как JavaFX 8.0 and beyond.
Смотрится очень вкусно, жаль что у меня привязка к 7-ке.
...
Рейтинг: 0 / 0
19.12.2014, 09:58
    #38837817
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
Alexey KuznetsovЕсли не сложно, скинь в личку или сюда скриншот с гридом?
Сейчас попробую собрать.

Alexey KuznetsovА что за проблема с диалогами? Вроде же там есть Dialogs какие-то?

Для Java 7 - нет. И нормальных готовых под Java 7 не нашел.

Alexey KuznetsovИ как заборол?
Кривенько

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
public class Dialog<T> extends Stage{

    private FXMLLoader loader;

    public Dialog(String fxml, String actionId){
        initStyle(StageStyle.UTILITY);
        initModality(Modality.APPLICATION_MODAL);

        Scene scene = null;
        try {
            loader = new FXMLLoader(getClass().getResource(fxml));
            Pane root = (Pane) loader.load();
            scene = new Scene(root );
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
        Button delete = (Button) scene.lookup(actionId);
        delete.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent e) {
                if(onAction()){
                    close();
                }
            }
        });
        Button cancel = (Button) scene.lookup("#cancel");
        cancel.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent e) {
                close();
            }
        });
        setScene(scene);
    }

    public T getController() {
        return loader.getController();
    }

    public boolean onAction(){
        //Override to implement
        return true;
    }
}

//*********************
                    final Dialog<DeleteController> dialog = new Dialog<DeleteController>("/fxml/DeleteScenario.fxml", "#delete"){
                        @Override
                        public boolean onAction() {
                            behavior.setFormula(backup);
                            //Is this a good way to refresh UI?
                            behaviorFormulaListColumn.setVisible(false);
                            behaviorNameListColumn.setVisible(false);
                            behaviorFormulaListColumn.setVisible(true);
                            behaviorNameListColumn.setVisible(true);
                            return true;
                        }
                    };

                    dialog.setTitle("Warning");
                    dialog.getController().message.setWrapText(true);
                    dialog.getController().message.setText(test);
                    dialog.getController().confirm.setText("Revert");
                    dialog.getController().cancel.setText("Keep");
                    dialog.showAndWait();
...
Рейтинг: 0 / 0
19.12.2014, 10:04
    #38837826
danatriel
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
Alexey Kuznetsov,
посмотри вот пример есть. На 7 я его использовал
...
Рейтинг: 0 / 0
19.12.2014, 10:34
    #38837849
irbis_al
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
BlazkowiczAlexey Kuznetsov,

У меня под Java 7 небольшая утилита на JavaFX написана. 3 скрина, редактируемые гриды, списки. Совсем не жалею что взял JavaFX. Swing уже в печенках сидит. Свойства очень круто подлечили, когда в одном месте что-то меняется, связанные бины и GUI автоматически пересчитывают состояние. На PropertyChangeEvent такое писал бы ещё пару дней сверху. SceneBuilder вполне себе порадовал адекватным менеджером компановки.

Разочарований было ровно два
1) В Java 7 нет готовых popup диалогов для сообщений (типа JOptionPane). Пришлось накнопать кривенький велосипед. Так как штука крайне нужная для адекватного GUI.
2) Геморрой при обмене бинами с сервером:
http://www.sql.ru/forum/1133207/podskazhite-po-javafx

Скажите,а это у Вас работало только на винде или и в других ОС.
Просто я тестировал JavaFx ,-полноценно работала только на винде...а на линуксах и маках, то там то сям было исключение типа не поддерживаемое свойство или не поддерживаемая ОС
...
Рейтинг: 0 / 0
19.12.2014, 11:04
    #38837876
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
irbis_alСкажите,а это у Вас работало только на винде или и в других ОС.

На винде.

irbis_alПросто я тестировал JavaFx ,-полноценно работала только на винде...а на линуксах и маках, то там то сям было исключение типа не поддерживаемое свойство или не поддерживаемая ОС
JavaFX 8 тоже?
...
Рейтинг: 0 / 0
19.12.2014, 11:20
    #38837897
korshun
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
Внесу свои 5 коп: для 8й джавы есть стороннее дополнение - controlsfx.
Там и всплывающие уведомления, и диалоги и еще много чего с блекджеком и шлюхами.
Пользую по мере необходимости - доволен, как слон.
...
Рейтинг: 0 / 0
19.12.2014, 11:21
    #38837899
irbis_al
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
JavaFX 8 тоже?

Нет...java 8 не смотрели..я на тестирование дальше забил...потому,что никак не удавалась найти решение для моего продакшин грида

Не получалось сделать многоуровневые заголовки и footer для Итого(На картинке я их красным выделил)
(На свинге это делается просто и куча примеров в интернете)

(Не получается присоеденить картинку) к себе на файлообменник закинул
https://cloud.mail.ru/public/9c92d44e0470/leveheader.JPG
...
Рейтинг: 0 / 0
19.12.2014, 11:22
    #38837900
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
korshun,

Быстр и оригинален.
...
Рейтинг: 0 / 0
19.12.2014, 11:26
    #38837909
korshun
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
irbis_alНе получалось сделать многоуровневые заголовки и footer для Итого

Вообще без проблем, в несколько кликов делается.
...
Рейтинг: 0 / 0
19.12.2014, 11:26
    #38837911
korshun
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
Blazkowiczkorshun,

Быстр и оригинален.
Атож))
...
Рейтинг: 0 / 0
19.12.2014, 11:28
    #38837914
irbis_al
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
korshunirbis_alНе получалось сделать многоуровневые заголовки и footer для Итого

Вообще без проблем, в несколько кликов делается.
А футер?
...
Рейтинг: 0 / 0
19.12.2014, 11:34
    #38837923
korshun
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
irbis_alА футер?
Футер, особо не заморачиваясь, я просто из label'ов конструировал :)
Что-то типа такого (ногами прошу не пинать, мну ламер еще):
...
Рейтинг: 0 / 0
19.12.2014, 11:41
    #38837935
irbis_al
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JavaFX или Swing?
korshunirbis_alА футер?
Футер, особо не заморачиваясь, я просто из label'ов конструировал :)
Что-то типа такого (ногами прошу не пинать, мну ламер еще):

Ну мне нужно было "слепить не из того ,что было"...а так как мне надо(у меня на этом бизнес построен..буду делать ни как положено,потеряю свой хлеб с маслом :-) )
Не получался у нас грид во-первых и не было кроссплатформенности во-вторых.(У меня базовая Ос linux и mac)
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / JavaFX или Swing? / 21 сообщений из 21, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]