elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Tutorial básico de Quickjs


  Mostrar Mensajes
Páginas: 1 [2] 3 4 5
11  Programación / Java / Re: Ayuda cargar ComboBox JavaFX FXML en: 15 Diciembre 2016, 17:12 pm
Tal vez diste mucho de la solucion, pues como he dicho en un post anterior no he trabajado con FXML, pero si el error te lo da al llenar el combobox lo que se me ocurre es aqui:
Código
  1. CmbCountry.getItems().add(pais.Nombre);

getItems().add() creo que lleva 2 argumentos, 1 es la posicion y 2 el valor. Prueba reemplazandolo de esta manera:
Código
  1. CmbCountry.getItems().addAll(pais.Nombre);
  2.  
  3. //o este en su defecto
  4.  
  5. CmbCountry.add(pais.Nombre);
  6.  

Si estoy equivocado no dudes en decirlo para revisarlo, un saludo

Hola el error persiste yo creo que es que cuando se lanza el método loadCmb aun la visual no se termino de cargar.
Este es el error:
Código
  1. java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
12  Programación / Java / Ayuda cargar ComboBox JavaFX FXML en: 15 Diciembre 2016, 06:34 am
Hola buena tengo un problema y es que quiero cargar un combobox con datos devueltos por una base de datos y hasta acá todo bien. La cosa es que al ejecutar el método el cual llenaría el combobox lanza error de compilacion porque el tiempo en el cual se lanzo el método no es el correcto.

Codigo:
Código
  1. public class FXMLDocumentRegisterController implements Initializable {
  2.  
  3.    @FXML
  4.    private JFXComboBox<String> CmbCountry;
  5.  
  6.    @FXML
  7.    private JFXButton BtnBack;
  8.  
  9.    @FXML
  10.    void BtnBack_Clicked(ActionEvent event) throws IOException{
  11.            Parent parent = FXMLLoader.load(getClass().getResource("FXMLDocumentLogIn.fxml"));
  12.            Scene loginScene = new Scene(parent);
  13.            Stage stage = (Stage)((Node) event.getSource()).getScene().getWindow();
  14.                  stage.hide();
  15.                  stage.setScene(loginScene);
  16.                  stage.show();
  17.    }
  18.  
  19.    @Override
  20.    public void initialize(URL url, ResourceBundle rb) {
  21.        this.CmbCountry = new JFXComboBox<String>();//aca inicializo el combobox
  22.        loadCmb();//aca ejecuto el metodo de carga del combobox
  23.    }
  24.  
  25.    private void loadCmb(){//este metodo carga el combobox con los datos devueltos de la base de datos
  26.        RepoPais repo = FabricaReposSQL.CrearRepoPais();
  27.        Iterable<Pais> p = repo.FindAll();
  28. for (Pais pais : p) {
  29.            CmbCountry.getItems().add(pais.Nombre);
  30. }
  31.    }
  32.  
  33. }
  34.  

Yo no veo el error, si me pueden ayudar se los agradecería mucho, soy nuevo en javaFX con FXML y es un poco mariante al inicio.
Desde ya muchas gracias. :)
13  Programación / Java / Re: Ayuda JavaFX FXML en: 15 Diciembre 2016, 06:29 am
No he trabajado FXML pero prueba el siguiente esquema:
Login, presiona en registrar, llamas a la ventana de registrar con .show() y usas .hide() en la ventana de login.
Despues del registro, llamas a .close() en la ventana de registro y .show() a la de login.

Respecto a tu segunda duda, no sabria decirte, deberia descargarme el compilador y verlo.

Muchas gracias ya pude resolver. :)
14  Programación / Java / Ayuda JavaFX FXML en: 15 Diciembre 2016, 00:54 am
Hola muy buenas estoy practicando con JavaFx en FXML y tengo 2 ventanas la principal y una a la cual se accede haciendo click en un botón especifico de la primera ventana
la cosa esta en que quiero poder de la segunda ventana volver a la primera he intentado por un montón de medios y no he podido.
Ventana principal:
Al realizar click en el boton registrarse redirige a esta ventana:


Yo quiero que al darle click al botón volver vuelva a la ventana de LogIn.
Codigo de ventana principal:
Código
  1. public class frmLogIn extends Application{
  2.  
  3.    public Stage stage = new Stage();
  4.  
  5.    @Override
  6.    public void start(Stage primaryStage) throws Exception {
  7.        try {
  8.        Parent root = FXMLLoader.load(getClass().getResource("FXMLDocumentLogIn.fxml"));
  9.  
  10.        Scene scene = new Scene(root);
  11.  
  12.        stage.getIcons().add(new Image("/Imgs/User.png"));
  13.        stage.setTitle("LogIn");
  14.        stage.setResizable(false);
  15.        stage.centerOnScreen();
  16.        stage.setScene(scene);
  17.        stage.show();
  18.  
  19.        } catch (IOException ex) {
  20.            System.out.println(ex.getMessage());
  21.        }
  22.    }
  23.  
  24.    public void CloseLogIn(){ stage.close(); }
  25.  
  26.    public static void main(String[]args){ launch(args); }

Codigo logica de ventana LogIn:
Código
  1. public class FXMLDocumentLogInController implements Initializable {
  2.  
  3.    @FXML
  4.    protected JFXButton BtnLogIn;
  5.  
  6.    @FXML
  7.    private JFXButton BtnSignUp;
  8.  
  9.    @FXML
  10.    private JFXTextField TxtUser;
  11.  
  12.    @FXML
  13.    private JFXPasswordField TxtPassword;
  14.  
  15.    @FXML
  16.    void BtnLogIn_Clicked(ActionEvent event) {
  17.  
  18.    }
  19.  
  20.    @FXML
  21.    void BtnSignUp_Clicked(ActionEvent event) {
  22.        frmRegister regis = new frmRegister();
  23.        Stage stage = (Stage) BtnLogIn.getScene().getWindow();
  24.              stage.close();
  25.                    regis.ShowRegister();
  26.    }
  27.  
  28.    @Override
  29.    public void initialize(URL url, ResourceBundle rb) {    }    

Codigo ventana Registrarse:
Código
  1. public class frmRegister {
  2.  
  3.   public Stage stage = new Stage();
  4.  
  5.    public void ShowRegister(){
  6.        try {
  7.            FXMLLoader loader = new FXMLLoader(FXMLDocumentLogInController.class.getResource("FXMLDocumentRegister.fxml"));
  8.            Parent frmRegister = (Parent) loader.load();
  9.  
  10.            stage.getIcons().add(new Image("/Imgs/User.png"));
  11.            stage.setTitle("Registro");
  12.            stage.centerOnScreen();
  13.            stage.setResizable(false);
  14.            stage.setScene(new Scene(frmRegister));
  15.            stage.show();
  16.        } catch (IOException ex) {
  17.            System.out.println(ex.getMessage());
  18.        }
  19.  
  20.    }
  21.  
  22.    public void CloseRegister(){
  23.        stage.close();
  24.    }
  25. }

Codigo logica visual Registrarse:
Código
  1. public class FXMLDocumentRegisterController implements Initializable {
  2.  
  3.    @FXML
  4.    private JFXComboBox<?> CmbCountry;
  5.  
  6.    @FXML
  7.    private JFXPasswordField TxtRePassword;
  8.  
  9.    @FXML
  10.    private JFXTextField TxtName;
  11.  
  12.    @FXML
  13.    private JFXButton BtnRegister;
  14.  
  15.    @FXML
  16.    private JFXTextField TxtLastName;
  17.  
  18.    @FXML
  19.    private JFXPasswordField TxtPassword;
  20.  
  21.    @FXML
  22.    private JFXTextField TxtUser;
  23.  
  24.    @FXML
  25.    private JFXButton BtnBack;
  26.  
  27.    @FXML
  28.    void BtnBack_Clicked(ActionEvent event) {
  29.            //aca se encuentra mi problema
  30.    }
  31.  
  32.    @FXML
  33.    void BtnRegister_Clicked(ActionEvent event) {
  34.  
  35.    }
  36.  
  37.    @Override
  38.    public void initialize(URL url, ResourceBundle rb) {    }    
  39.  
  40. }

ha y una cosa mas me podrían decir como separar el método main de la visual de LogIn ya he intentado pero me d error al compilar al retirarlo de esa clase y poniéndola en una nueva.
Bueno hasta aca lo que serian mis dudas espero me puedan ayudar.
Desde ya muchas gracias :)
15  Programación / Java / Re: Ayuda con ComboBox en: 14 Diciembre 2016, 04:36 am
Hola muchas gracias no me había dado cuenta de ese error tan tonto.
muchas gracias :)
16  Programación / Java / Re: Bucle for each en: 13 Diciembre 2016, 20:55 pm
hola buenas lo que puedes hacer es hacer el for each y dentro comprobar si tu variable a caba vuelta es true o false ejemplo

Código
  1. for (Pais pais : p) {
  2. if (pais != null) {
  3.      //codigo que quieres ejecutar si la variable es verdadera
  4. }else{
  5. return; //un return; en un metodo void lo que hace es finalizar abruptamente el método impidiendo que este siga ejecutándose
  6. }
  7. }
  8.  
17  Programación / Java / Ayuda con ComboBox en: 13 Diciembre 2016, 20:42 pm
Hola muy buenas tengo un problema  y es el siguiente estoy haciendo una app de uso personal de practica nada mas y quiero llenar un combobox con los nombres de todos los países del planeta. A los nombres de los países ya los tengo en un a BD mysql.
y tengo estos métodos y clases:
                                           clase Pais
Código
  1. import java.sql.ResultSet;
  2. import java.sql.SQLException;
  3.  
  4. public class Pais {
  5.  
  6. public Integer ID;
  7. public String Iso;
  8. public String Nombre;
  9.  
  10. public void Load(ResultSet result) throws NumberFormatException, SQLException{
  11. if(result != null){
  12. this.ID = Integer.parseInt(result.getString("id"));
  13. this.Iso = result.getString("iso").toString();
  14. this.Nombre = result.getString("nombre").toString();
  15. }
  16. }
  17.  

                                            clase RepoPais con método findAll();
Código
  1. @Override
  2. public Iterable<Pais> FindAll(){
  3. try {
  4. con = BDUtils.getConnection();
  5. st = con.createStatement();
  6. rs = st.executeQuery(FindAll);
  7. List<Pais> paises = new ArrayList<Pais>();
  8. while(rs.next()){
  9. Pais p = new Pais();
  10. p.Load(rs);
  11. paises.add(p);
  12. }
  13. return paises;
  14. } catch (Exception e) {
  15. return null;
  16. }

                                            clase de la visual
la cual en el constructor inicializa los componentes de la visual y luego llama a un método nombrado loadCmb:

Código
  1. @SuppressWarnings("unused")
  2. public void loadCmb(){
  3. RepoPais repo = FabricaReposSQL.CrearRepoPais();
  4. Iterable<Pais> p = repo.FindAll();
  5. for (Pais pais : p) {
  6. CmbCountry.addItem(p.iterator().next().Nombre.toString());
  7. }
  8. }
  9.  
El problema reside en este ultimo método loadCmb que tendría que cargarme los nombres de los países devueltos por la base de datos pero en cambio me llena el comboBox con el nombre del primer país devuelto.
Dejo imagen para explicarme mejor.




Espero me puedan decir como puedo hacer para que vaya iterando entre la lista de los devueltos así se llena el comboBox con los países devueltos y no con solo uno. Desde ya muchas gracias :)
18  Programación / Programación Visual Basic / procesos en segundo plano y cargas en: 6 Noviembre 2016, 02:11 am
Hola muy buenas tengo un pequeño problema y espero me puedan ayudar :) .
Empecemos explicando: Soy nuevo utilizando procesos en paralelo y desames.
Mi problema es el siguiente:

Tengo una ventana de LogIn en la cual quiero que cuando se le de a ingresar aparezca un ProcessRing(Estoy utilizando MahApps Metro en una app WPF) y el cual en segundo plano valla cargando la visual que sigue y cuando este termine de cargar el ProcessRing se detenga y desaparezca cerrando la visual y abriendo la otra. Para intentar hacer esto cree el siguiente código:

(Cabe aclarar que tambien quiero que mientras este el ProcessRing se la visual quede inutilizable)
 
Código
  1. Imports System.ComponentModel
  2. Imports MahApps.Metro.Controls
  3. Imports MahApps.Metro.Controls.Dialogs
  4.  
  5. Public Class LogicLogIn : Inherits MetroWindow
  6.  
  7.    Dim bw As New BackgroundWorker
  8.  
  9.    Sub New()
  10.        InitializeComponent()
  11.        bw.WorkerReportsProgress = True
  12.        AddHandler bw.DoWork, AddressOf bw_DoWork
  13.        AddHandler bw.RunWorkerCompleted, AddressOf bw_RunWorkerCompleted
  14.    End Sub
  15.  
  16.    Private Sub BtnLogIn_Click(sender As Object, e As RoutedEventArgs) Handles BtnLogIn.Click
  17.        If TxtUser.Text.Equals("") Or TxtPass.Password.ToString.Equals("") Then
  18.            Me.ShowMessageAsync("Alerta", "Usuario o Contraseña incorrecta")
  19.        Else
  20.            Ring.Visibility = Visibility.Visible
  21.            Ring.IsActive = True
  22.            If Not bw.IsBusy = True Then
  23.                bw.RunWorkerAsync()
  24.            End If
  25.        End If
  26.  
  27.    End Sub
  28.  
  29.    Private Sub bw_DoWork(sender As Object, e As DoWorkEventArgs)
  30.        Dim worker As BackgroundWorker = CType(sender, BackgroundWorker)
  31.        Dim menu As New LogicMainMenu()
  32.        Me.Close()
  33.        menu.ShowDialog()
  34.    End Sub
  35.  
  36.    Private Sub bw_RunWorkerCompleted(sender As Object, e As RunWorkerCompletedEventArgs)
  37.        If e.Cancelled = True Then
  38.            'si se cancela
  39.        ElseIf e.Error IsNot Nothing Then
  40.            'si hay algun error al hacerce la tarea en el hilo
  41.            MsgBox(e.Error.Message.ToString)
  42.        Else
  43.            Ring.IsActive = False
  44.            Ring.Visibility = Visibility.Hidden
  45.        End If
  46.    End Sub
  47.  
  48. End Class

La cosa esta que a la hora de ejecución cuando cumplo los valores de validación y le doy al botón aceptar aparece el ProcessRing se activa y me lanza un error.

Les dejo imágenes del programa:
Img 1


Img2


Img 3


Espero me puedan ayudar desde Ya muchas gracias :)
19  Programación / Programación Visual Basic / Re: Validaciones TextBox en: 6 Noviembre 2016, 01:49 am
muchas gracias :)
20  Programación / Programación Visual Basic / Validaciones TextBox en: 28 Octubre 2016, 23:19 pm
Hola buenas lamento molestarlos miren tengo un pequeñísimo problema el cual es tengo un textbox el cual debe dejar escribir solo números y un punto para números decimales la cosa esta en que como tengo el código hasta el momento

no puedo ingresar:
                           - .423783 (lo cual esta bien)
pero si puedo ingresar:
                                 - 4...45 (lo cual esta mal)

yo lo que quiero es que no pueda ingresar mas de un punto en el textbox les dejo el codigo a continuación.

Código
  1. Function ValidDigits(ByVal Digito As String, ByVal Texto As String) As Boolean
  2.        Dim entero As Integer = CInt(Asc(Digito))
  3.        Dim valorePermitidos As String = "1234567890."
  4.  
  5.        If entero = 8 Then
  6.            ValidDigits = False
  7.        Else
  8.  
  9.            If InStr(valorePermitidos, Digito) = 0 Or InStr(".", Digito) = 11 Then
  10.                ValidDigits = True
  11.                Beep()
  12.            ElseIf IsNumeric(Texto) Then
  13.                ValidDigits = False
  14.            Else
  15.                ValidDigits = True
  16.                Beep()
  17.            End If
  18.  
  19.        End If
  20.  
  21.        Return ValidDigits
  22.  
  23.    End Function

Desde ya muchas gracias :)
Páginas: 1 [2] 3 4 5
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines