Dim pwd As JavaObject
pwd.InitializeNewInstance("javafx.scene.control.PasswordField",Null)
Dim joMe As JavaObject = Me
Dim ba As Object = joMe.GetField("ba")
Me.as(JavaObject).RunMethod("addHandler",Array(pwd, ba, Me))
#If java
import anywheresoftware.b4j.objects.PaneWrapper.ConcretePaneWrapper;
import anywheresoftware.b4a.BA;
import javafx.scene.control.PasswordField;
public static void addHandler(PasswordField pw, BA ba, Object b4xPage){
pw.textProperty().addListener((obs, oldText, newText) -> {
ba.raiseEventFromUI(b4xPage, "onpasswordchanged", newText);
});
}
#End If
Sub OnPasswordChanged(NewPassword As String)
'called from java code below
Dim strength As Int = pg.CalcPwdStrength(NewPassword)
Log("Strength P: " & strength)
hp.Value = strength
End Sub