IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants Java Discussion :

Créer des composants personnalisés


Sujet :

Composants Java

  1. #1
    Membre habitué Avatar de richard_sraing
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Avril 2005
    Messages
    483
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2005
    Messages : 483
    Points : 182
    Points
    182
    Par défaut Créer des composants personnalisés
    Bonjour tout le monde,

    Voilà, cela fait un petit moment que je n'ai plus développé en java, bien malgré moi

    Alors voilà, dans l'application que je souhaite développer, j'ai une série de jTextfield et de label associé à mettre en place, et honnêtement, je n'ai pas trop envie de me prendre à tous les placer correctement, c'est pourquoi je me suis demandé, si il n'y a pas moyen de créer mon propre composant qui serait nommé par exemple MonTextField et qui aurait les propriétés suivantes:

    - il disposerait d'une première part, d'un label permettant de décrire l'info se trouvant dans le jTextField associé
    - le jTextField proprement dit contenant l'information

    (Pour faire simple donc, un composant qui manipulerait les deux simultanément).

    Il faudrait pour bien faire aussi, que le label associé, puisse être modifié sans trop de peine.

    Maintenant je me pose la question, est ce que je dois créer une classe, contenant ces deux composants, et créer les méthodes associées afin de manipuler les deux composants, et si oui, existe-t-il un utilitaire permettant de réaliser une telle chose, ou est ce que je dois me "farcir" tout le code comme un "vrai" développeur ?

    Ou alors, quelqu'un dans l'assemblée aurait-il une merveilleuse idée de comment réaliser une telle chose sans trop se prendre la tête ?

    En vous remerciant d'avance pour vos conseils, astuces et remarques, je vous souhaites de passer une agréable journée.

    Richard_sraing

  2. #2
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    Je vois ça ainsi : un objet qui hérite de JPanel et qui regroupe un JLabel et un JTextField. Deux méthodes qui retourne les instances JLabel et JTextField.

  3. #3
    Membre habitué Avatar de richard_sraing
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Avril 2005
    Messages
    483
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2005
    Messages : 483
    Points : 182
    Points
    182
    Par défaut
    En voilà une idée qu'elle est pas mauvaise

    Alors voilà ce que j'ai bricoler pour le moment, mais je ne l'ai pas encore testé :

    Code JAVA : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    package GUI.COMPONENTS;
     
    import javax.swing.JPanel;
    import javax.swing.JLabel;
    import javax.swing.JTextField;
    import javax.swing.JButton;
     
    /**
     *
     * @author richard
     */
    public class JComplexTextField extends JPanel {
     
        private JLabel Description;
        private JTextField Donnee;
        private JButton Etendre;
     
        public JComplexTextField() {
            this.Description = new JLabel();
            this.Donnee = new JTextField();
            this.Etendre = new JButton("...");
     
        }
     
        public JComplexTextField(String Description, String Donnee) {
            this.Description = new JLabel();
            this.Description.setText(Description);
     
            this.Donnee = new JTextField();
            this.Donnee.setText(Donnee);
     
            this.Etendre = new JButton("...");
        }
     
     
        public void SetDescription(String Description) {
            this.Description.setText(Description);
        }
     
        public void SetDonnee(String Donnee) {
            this.Donnee.setText(Donnee);
        }
     
        public String GetDonnee() {
            return this.Donnee.getText();
        }
     
    }

    En fait, je souhaiterais obtenir un composant du genre ceci :



    Voilà, alors une autre question se pose à moi, au niveau de l'event sur le bouton, est ce que je le traite dans l'objet même, ou est ce que je dois le placer autre part?
    Car en fait, il y aura plusieurs JComplexTextField dans une même frame de mon application, et les actions à réaliser seront des requêtes vers une base de données mysql (en passant par un serveur d'application), et que les requêtes seront différentes en fonction du "contenu" du texte (de la zone correspondant à celle dans la BD).

    Certains d'entre vous penseront surement que je tente de réinventer la roue, et que ce genre de module existe déjà en Java, si oui, merci de me donner le nom de ce composant.

    Je sais que ce module existe dans un langage très peu connu (le Dataflex, langage américain de programmation de 4GL), et je me demandais donc, si il existe en java, ou alors comment le créer de manière performante en java.

    Merci pour vos conseils, remarques, astuces et autres.

    En vous souhaitant de passer une agréable soirée.

    Richard

    P.S.: j'ai remarquer aussi que le composant ne sais pas être édité via l'éditeur graphique (dans NetBeans), et est ce que quelqu'un pourrait donc me dire, si il est possible de l'éditer graphiquement, et si il est possible de rajouter ces composants graphiques personnels dans la palette de Netbeans?

  4. #4
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    Citation Envoyé par richard_sraing Voir le message
    Voilà, alors une autre question se pose à moi, au niveau de l'event sur le bouton, est ce que je le traite dans l'objet même, ou est ce que je dois le placer autre part?
    C'est à toi de voir. Si le composant se suffit à lui même, ou si des paramètres supplémentaires peuvent être transmis facilement au JComplexTextField, alors laisse le JComplexTextField se débrouiller comme un grand.
    Tant que ça ne devient pas une usine à gaz et que le fonctionnement reste logique, tout est possible.

Discussions similaires

  1. [QtGui] Créer des composants personnalisés
    Par dourouc05 dans le forum PyQt
    Réponses: 2
    Dernier message: 13/04/2012, 17h19
  2. [B.NET][ADO.NET] Créer des composants à la volée
    Par DotNET74 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 27/12/2007, 15h31
  3. Réponses: 5
    Dernier message: 19/02/2007, 15h44
  4. Créer des composants personnalisés avec JBuilder 4
    Par mtaveau dans le forum JBuilder
    Réponses: 4
    Dernier message: 21/06/2006, 07h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo