What is the effect of modifying Module1 to something like this?
Would this help around WinLAF?
Why doesn't the WinLAF problem blow *my* applications?
A1880
|
|
Jabaco Source |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
Option Explicit Public Form1 As Form1 Public Sub main(ByJava args() As String) Dim laf As String Dim myArgs() As String myArgs = args ' laf = javax#swing#UIManager.getCrossPlatformLookAndFeelClassName() laf = javax#swing#UIManager.getSystemLookAndFeelClassName() ' laf = "com.sun.java.swing.plaf.windows.WindowsLookAndFeel" Debug.Print "laf=" & laf UIManager.setLookAndFeel laf Form1 = New Form1 Form1.SetDefaultClose() Form1.Show() End Sub |
Would this help around WinLAF?
Why doesn't the WinLAF problem blow *my* applications?
A1880
What is the effect of modifying Module1 to something like this?
Don't know.
To all the people with the error message: Trying A1880s code for Module1 out and writing here, if the error still exists!
Quoted
Would this help around WinLAF?
Don't know.
Quoted
Why doesn't the WinLAF problem blow *my* applications?
I don't understand it exactly, too. And I am also wondering about it, too. But the reason is, that you still have an older JRE where the method DesktopProperty(String, Object, Toolkit) exists.
On my system it is the same. There the "Java" directory under "Program Files" looks like this:
|
|
Source code |
1 2 3 |
13.02.2011 18:02 <DIR> jdk1.6.0_23 10.10.2010 16:40 <DIR> jre1.6.0_20 13.02.2011 18:02 <DIR> jre6 |
So there existing two Java 1.6.0_23 directories (jdk1.6.0_23 and jre6) and one Java 1.6.0_20 directory (jre1.6.0_20).
Try to move your directory with the old Java version to an other place, so that the system can't find it. I think then you will become the same error like the thread opener.
Ok, I have no tried myself to rename the old Java-directory. It have no effect. Jabaco works still fine.
But the WinLAF-mysterious go on: I have tried here in an Internetcafé (where I can nearly all install, without to need to deinstall later all) to delete the complete WinLAF-part in Jabaco.jar.
I expected, that Jabaco now will no loger run. But thats not true.
If I create a SDI program and start it, there comes an Jabaco-error window

But after that, Jabaco runs further on, without any problems!
And I see no difference of the running program with or without WinLAF.
Here a screenshot of a little test program without WinLAF:

But the Jabaco.jar is without WinLAF more then 100kB smaller then with WinLAF.
But the WinLAF-mysterious go on: I have tried here in an Internetcafé (where I can nearly all install, without to need to deinstall later all) to delete the complete WinLAF-part in Jabaco.jar.
I expected, that Jabaco now will no loger run. But thats not true.
If I create a SDI program and start it, there comes an Jabaco-error window
But after that, Jabaco runs further on, without any problems!
And I see no difference of the running program with or without WinLAF.
Here a screenshot of a little test program without WinLAF:
But the Jabaco.jar is without WinLAF more then 100kB smaller then with WinLAF.
VB.JBCLookAndFeel has the following source:
It would probably make sense to remove or change the "Call net#java#plaf#LookAndFeelPatchManager.initialize()".
The difference between standard L&F and WinLAF is described in the WinLAF files. It probably takes some detailed experiments to find out, how this works out in practice.
An alternative repair would be to add the missing 3rd parameter to the instantiation of DesktopProperty()
Framework maintenance is real fun, isn't it?
Greetings
A1880
|
|
Jabaco Source |
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 |
Implements IJabacoClass Public Sub Class_Initialize Call setDefaultLookAndFeel() End Sub Public Sub setDefaultLookAndFeel() setLookAndFeel( getSystemLookAndFeelClassName() ) Dim myOS As String = LCase(SysInfo.OperatingSystem) If InStr(1, myOS, "windows") > 0 Then If SysInfo.SecurityMode = False Then 'If LCase(myOS) <> "windows vista" Then Call net#java#plaf#LookAndFeelPatchManager.initialize() 'End If End If End If End Sub Public Function setJabacoLookAndFeel(v As String) As Boolean Call UIManager.setLookAndFeel(v) SetJabacoLookAndFeel = True End Function Public Function isInitialized() As Boolean isInitialized = True End Function |
It would probably make sense to remove or change the "Call net#java#plaf#LookAndFeelPatchManager.initialize()".
The difference between standard L&F and WinLAF is described in the WinLAF files. It probably takes some detailed experiments to find out, how this works out in practice.
An alternative repair would be to add the missing 3rd parameter to the instantiation of DesktopProperty()
|
|
Source code |
1 |
DesktopProperty(String paramString, Object paramObject, Toolkit paramToolkit) |
Framework maintenance is real fun, isn't it?
Greetings
A1880
It would probably make sense to remove or change the "Call net#java#plaf#LookAndFeelPatchManager.initialize()".
Thanks for your help. I will look later more at it.
Quoted
The difference between standard L&F and WinLAF is described in the WinLAF files.
I have read in the internet, that WinLAF looked more like Windows then Suns implementation.
But I think - because WinLAF is BSD-licensed and time have gone - in newer Java-version all the WinLAF things are integrated. Possible today the implementation in the Java-runtime is better then WinLAF.
|
|
Source code |
1 |
An alternative repair would be to add the missing 3rd parameter to the instantiation of DesktopProperty() |
Thanks. I will look at it later.
The same
Ok, I have no tried myself to rename the old Java-directory. It have no effect. Jabaco works still fine.
But the WinLAF-mysterious go on: I have tried here in an Internetcafé (where I can nearly all install, without to need to deinstall later all) to delete the complete WinLAF-part in Jabaco.jar.
I expected, that Jabaco now will no loger run. But thats not true.
If I create a SDI program and start it, there comes an Jabaco-error window
[attach]265[/attach]
But after that, Jabaco runs further on, without any problems!
And I see no difference of the running program with or without WinLAF.
Here a screenshot of a little test program without WinLAF:
[attach]266[/attach]
But the Jabaco.jar is without WinLAF more then 100kB smaller then with WinLAF.
Same message for me, also same behaviour, on XP SP3, Java(TM) SE Runtime Environment (build 1.6.0_25-b06)
I solved this problem by uninstalling the 6.26 JRE and installing the jre-6u20-windows-i586.exe.
The problem with the 6.26 apeared only on some machines (2 of 7 tested Windows XP and Windows 7 systems), on others it went fine...cant explain why.
So i will disallow any Java updates at the concerned Machines until a better solution has been found.
Any progress?
I'm curious about a couple things... This NoSuchMethodError rather forced me to be done with Jabaco for a while, since I was hoping to build some utilities, but couldn't have the error popup be part of my compiled app... I've noticed that my JRE is up to update 29 now, has anyone assessed whether the problem has been corrected in later JRE releases? If not, I could install jabaco again, but I'm out of touch now, don't know what latest JAR's to use, etc...
Next a more general question: I notice the jabaco download release is still from 2009... is this project still alive as far as the author(s) are concerned? It appears the community is still active, and I'd like to get involved again, the error popup is a killer for me though...
Next a more general question: I notice the jabaco download release is still from 2009... is this project still alive as far as the author(s) are concerned? It appears the community is still active, and I'd like to get involved again, the error popup is a killer for me though...
RE: Any progress?
Oh, an additional thread, where the solution isn't posted.I'm curious about a couple things... This NoSuchMethodError rather forced me to be done with Jabaco for a while, since I was hoping to build some utilities, but couldn't have the error popup be part of my compiled app
The solution for this problem is to download the latest Jabaco.jar version:
Jabaco-rev84.jar
Download it, rename it to Jabaco.jar and copy it in your Jabaco-directory. (Replace there the existing Jabaco.jar with this file).
For future plans of Jabaco have a look at the thread at
Quoted
Next a more general question: I notice the jabaco download release is still from 2009... is this project still alive as far as the author(s) are concerned? It appears the community is still active, and I'd like to get involved again, the error popup is a killer for me though...
[ http://www.jabaco.org/board/657-new-version.html ]
Greatings
theuserbl
Wow, the fix is great news. I had no idea, I guess I'm out of the loop. Is the jabaco website being updated in any way? I'm not on googlecode, so I had no idea of this new .jar. The "download" section of this site still shows 1.5.2 as latest build from 2009. The framework downloads have things up through Jan 2011, but I know that most of those posted framework builds aren't any good. Any possibility of getting the framework downloads cleaned up and posting this new "84" version? (Which, by the way, I downloaded and it fixed all of my problems as advertised.) Thanks!
Similar threads
-
General topics, questions and discussions »-
Error starting application
(Jul 1st 2009, 8:42pm)
-
Tips, Tricks, Samples & Tutorials »-
instanceOf for jabaco
(Jul 23rd 2010, 8:25pm)
-
General topics, questions and discussions »-
Jabaco on Windows Mobile 2005
(Oct 2nd 2009, 4:57am)
-
General topics, questions and discussions »-
How to cast?
(Feb 9th 2009, 12:30pm)
-
General topics, questions and discussions »-
FireBird JDBC Connection
(Feb 9th 2009, 2:29am)
