Jambi(java的qt綁定)從Qt4.5後被nokia拋棄扔給社區,現在的版本是4.6,下載的jambi運行的程式是沒有oxygen樣式,只有少有的幾個極度醜的控制項主題,之前搜索網絡,看jambi郵件列表的說法得自個編譯jambi才有oxygen控制項。
其實可以不用這麼麻煩的,只要刪除jar包中的qt便可。用ark把qtjambi-linux32-gcc-4_1.6.3.jar中的 libQt*全部刪除。留下libcom_trolltech*,libqtjambi之類。然後編輯qtjambi-deployment.xml,把 凡是系統有的庫都刪掉,因為jambi系統要是從jar包找不到庫,會去系統/usr/lib下找的。會用上系統的Qt,所以各種主題,包括 oxygen,gtk+這類主題自然也就有了。
- 代碼: 選擇全部
import com.trolltech.qt.gui.QApplication;
import com.trolltech.qt.gui.QStyleFactory;
public class Test {
public static void main(String[] args) {
QApplication.initialize(args);
System.out.println(QStyleFactory.keys());
QApplication.exec();
}
}
輸出
[Oxygen, Windows, Motif, CDE, Plastique, GTK+, Cleanlooks]
不過因為系統的是Qt4.7,當前jambi4.7隻有win beta版,所以可能某些地方會有問題,比如example裡的launcher就啟動不了,其他demo倒是沒問題。
這樣搞了以後,jambi程式的phonon也是系統的,支持播放的格式也完全由系統的phonon後端決定了,多多了。