2016-04-29 17 views
1

Substance LAFを実装しようとしました。私はTridentライブラリもダウンロードしました。アプリケーションは通常(パッケージ構造から選択されたLAFを使用して)起動しますが、JMenuBarでメニューを使用しようとすると、以下の例外が発生します。IllegalArgumentException:Substance LAFの実装中にfloatの補間が見つかりません

私は非常によく似た問題を発見しましたが、それは間違いなく別のものです - Flamingo ribbon: Java.lang.IllegalArgumentException: No interpolator found for java.lang.Float:java.lang.Float

Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException:  No interpolator found for 
java.lang.Float:java.lang.Float 
at org.pushingpixels.trident.TimelinePropertyBuilder.getFieldInfo (TimelinePropertyBuilder.ja 
va:257) 
at org.pushingpixels.trident.Timeline.addPropertyToInterpolate (Timeline.java:353) 
at org.pushingpixels.trident.Timeline.addPropertyToInterpolate (Timeline.java:363) 
at  org.pushingpixels.substance.internal.animation.StateTransitionTracker.onModelStat eChanged 
(StateTransitionTracker.java:394) 
at org.pushingpixels.substance.internal.ui.SubstanceMenuUI$1.mouseEntered  (SubstanceMenuUI.ja 
va:155) 
at java.awt.AWTEventMulticaster.mouseEntered(Unknown Source) 
at java.awt.Component.processMouseEvent(Unknown Source) 
at javax.swing.JComponent.processMouseEvent(Unknown Source) 
at java.awt.Component.processEvent(Unknown Source) 
at java.awt.Container.processEvent(Unknown Source) 
at java.awt.Component.dispatchEventImpl(Unknown Source) 
at java.awt.Container.dispatchEventImpl(Unknown Source) 
at java.awt.Component.dispatchEvent(Unknown Source) 
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source) 
at java.awt.LightweightDispatcher.retargetMouseEnterExit(Unknown Source) 
at java.awt.LightweightDispatcher.trackMouseEnterExit(Unknown Source) 
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source) 
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source) 
at java.awt.Container.dispatchEventImpl(Unknown Source) 
at java.awt.Window.dispatchEventImpl(Unknown Source) 
at java.awt.Component.dispatchEvent(Unknown Source) 
at java.awt.EventQueue.dispatchEventImpl(Unknown Source) 
at java.awt.EventQueue.access$500(Unknown Source) 
at java.awt.EventQueue$3.run(Unknown Source) 
at java.awt.EventQueue$3.run(Unknown Source) 
at java.security.AccessController.doPrivileged(Native Method) 
at  java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege (Unknown Sou 
rce) 
at  java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege (Unknown Sou 
rce) 
at java.awt.EventQueue$4.run(Unknown Source) 
at java.awt.EventQueue$4.run(Unknown Source) 
at java.security.AccessController.doPrivileged(Native Method) 
at  java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege (Unknown Sou 
rce) 
at java.awt.EventQueue.dispatchEvent(Unknown Source) 
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) 
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) 
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) 
at java.awt.EventDispatchThread.pumpEvents(Unknown Source) 
at java.awt.EventDispatchThread.pumpEvents(Unknown Source) 
at java.awt.EventDispatchThread.run(Unknown Source) 

+0

*「何か考えていますか?」*別のPLAFを使用してください。あなたの質問をより具体的にしたいですか? –

+0

クロスポスト:http://www.coderanch.com/t/665093/GUI/java/IllegalArgumentException-interpolator-float-implementing-Substance#3097418 – camickr

答えて

0

私はいくつかの良い時間の後、これに対する解決策を見つけました。エラー

java.lang.IllegalArgumentExceptionが:java.lang.Floatのが見つかりません補間:java.lang.Floatの

TimelinePropertyBuilderクラスのコードとは何の関係もありません。 それぞれの最上位ライブラリのMETA-INFtrident-plugin.propertiesというファイルがありません。 Interpolatorクラスのソースが正確に定義されています。

ので、代わりにそれを探して、ここにそんなにtrident-plugin.properties必要です:

UIToolkitHandler=org.pushingpixels.trident.swing.SwingToolkitHandler 
PropertyInterpolatorSource=org.pushingpixels.trident.swing.AWTPropertyInterpolators 

UIToolkitHandler=org.pushingpixels.trident.swt.SWTToolkitHandler 
PropertyInterpolatorSource=org.pushingpixels.trident.swt.SWTPropertyInterpolators 

UIToolkitHandler=org.pushingpixels.trident.android.AndroidToolkitHandler 
PropertyInterpolatorSource=org.pushingpixels.trident.android.AndroidPropertyInterpolators 

PropertyInterpolatorSource=org.pushingpixels.trident.interpolator.CorePropertyInterpolators 

これは、それを整理する必要があります。

関連する問題