LINUX.ORG.RU

А можно поподробнее чайникам в java про это? Что это - возможность незаметного для java apps использования gtk для UI (то есть пишем под яву, а юзер, если хочет, просит яву рисовать через gtk, чтобы получить gtk skinability и пр, или это просто javа bindings к gtk - то есть которые надо в сырцах использовать явно)? Спасибо за ответ.

anonymous
()
Ответ на: комментарий от anonymous

Это SWT, который привязан к GTK+. SWT -- в некотором смысле аналог swing, использующие "родные" контролы, механизмы отрисовки, обработки событий, etc. На linux SWT привязывается, по крайней мере, к motif и gtk+. В "сырцах" ничего явно указывать не надо -- просто пишешь с использованием org.bla-bla-bla.swt.* -- и на каждой платформе код будет использовать родные контролы, иметь родной l&f, etc. Читать про это
http://www.eclipse.org/platform/index.htm --> Platform --> SWT.

AC
()
Ответ на: комментарий от anonymous

Неправда, не на простом свинге. "However, most of this look can quickly be emulated by Swing. It took me 2:50 hours to build this fake using an extended Windows Look&Feel that I had built before for jDiskReport."
И что делать не на Windows? Как поиметь нативный вид там?
И вообще, после SWT помойному, тормозному и убогому swing'у место на помойке:)

AC
()

mport org.eclipse.swt.*;
import org.eclipse.swt.graphics.*;
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.layout.*;

public class SwtButtonDemo {
public static void main(String [] args) {
Shell shell = new Shell();
shell.setLayout(new FillLayout());
shell.setSize(100, 50);
Button widget = new Button(shell, SWT.PUSH);
widget.setText("E.Gamma"); // I like his book!
shell.open();
Display display = shell.getDisplay();
while (!shell.isDisposed())
if (!display.readAndDispatch())
display.sleep();
}
}

#!/bin/sh
# Copy all corresponded SWT Motif &GTK+ *.so to /usr/lib
export JAVA_HOME=/opt/ijdk
export PATH=/opt/ijdk/bin:$PATH
javac -classpath swt.jar:.:$CLASSPATH SwtButtonDemo.java
java -cp .:$CLASSPATH:swt.jar:swt-pi.jar SwtButtonDemo

----------
Nikolai. (wmaker2002@mail.ru)


NikS
() автор топика

2AC: А вот и нет, на самом простом свинге. Прежде чем писать читай внимательно. Я перед тем как прокоментировать запустил пример под Linux'ом. Согласен, swt под windows гораздо быстрее swing'а. Однако swing может отлично выглядеть, он переносим и стандартен. swt на платформах отличающихся от windows не эстетичен (говорю глядя на скриншоты eclipse с gtk и motif). На этот год мой выбор - swing.

anonymous
()
Ответ на: комментарий от anonymous

>Согласен, swt под windows гораздо быстрее swing'а.
swt быстрее swing'a и на линуксе тоже. Кстати, можно будет представить скорость swt с будущими версиями gcj (если его туда портируют) -- где затраты на вызов native-методов минимальны.

>однако swing может отлично выглядеть, он переносим и стандартен.
swt тоже переносим. А о стандартности в мире java и речи быть не может...

>swt на платформах отличающихся от windows не эстетичен (говорю глядя на скриншоты eclipse с gtk и motif).
А по мне, это swing неэстетичен вообще ни на каких платформах.

>На этот год мой выбор - swing.
а мой -- swt...:)

AC
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.