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

 Java Discussion :

faire un dessin accordé aux dimensions de l'utilisateur


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Septembre 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 7
    Par défaut faire un dessin accordé aux dimensions de l'utilisateur
    slt a tous, je veux faire de l'interface graphique avec java pour dessiner un cerle une ligne et un carré accordé aux dimansions de l'utilisateur,j'arrive deja a faire ses dessins mais tous se font dans mon frame les trois dessins,je panse que c'est du au fait que ma class graphics s'excute automatiquement dés que je lance mon programme,j'aimarai bien que mon utilisateur puisse choisir la grahe qu'il veut dessiner et donner ses dimensions.
    merçi d'avance pour vos solutions.

  2. #2
    Membre Expert Avatar de Ivelios
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 031
    Par défaut
    Tu rajoute des JTextField pour saisir les dimensions de tes rectangles, carré, ...
    Tu rajoute un bouton qui à pour effet des rajouter toutes ces figures dans une liste.
    Dans le paintComponent tu parcours la liste et tu dessine.

    Ou plus classe que les JTextField, à la souris

  3. #3
    Membre Expert Avatar de Ivelios
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 031
    Par défaut
    brs a tous j'aimerai savoir s'il existe en java une autre methode autre que paint de la classe graphics pour faire les dessins tel que la cercle le carré et une ligne.
    merçi d'avance pour vos reactions
    brs a tous, je monte une application qui va faire le dessin d'un cerle d'un carré et d'une line accordé aux dimensions de l'utilisateur j'ai deja monté mon frame mais le formatage est trés bizar j'ai besoin d'aide pour mieux comprendre et mieux formater mon frame voici mon code. merçi d'avance

    Code : 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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    import java.lang.*;
    import java.io.*;
    import java.awt.*;
    import java.awt.event.*;
     
    public class Dessin extends Frame implements ItemListener, MouseListener
    {
     
    Label textChoise;
    Label textRadius; 
    Label textSize;
    Label textLength;
    Button b;
    Choice ch;
    TextField t;
    public Dessin()
    {
    textChoise = new Label("Choice what you want to draw",Label.LEFT);
    textRadius =new Label("Please enter the radius",Label.LEFT);
    textSize =new Label("Please enter the side",Label.LEFT);
    textLength =new Label("Please enter the Length",Label.LEFT);
    b = new Button("Draw");
    add(textChoise);
    ch=new Choice();
    String s[]={"Make your Choise","circle","line","square"};
    for(int i=0;i<s.length;i++)
    ch.add(s[i]);
    add(ch);
     
    setLayout(new GridLayout(4,2));
    setBackground(Color.pink);
    addWindowListener(new w());
     
    t = new TextField(10);
    add(textRadius).setVisible(false);
    add(textSize).setVisible(false);
    add(textLength).setVisible(false);
     
    add(t).setVisible(false);
    add(b).setVisible(false);
    ch.addItemListener(this);
    b.addMouseListener(this);
    }
     
    public class w extends WindowAdapter
    {
    public void windowClosing(WindowEvent e)
    {
    System.exit(0);
    }
    }
     
    public static void main(String[] args) 
    {
     
    Dessin ff = new Dessin();
    ff.setSize(1000,500);
    ff.setVisible(true);
     
    }
     
     
    public void itemStateChanged(ItemEvent f) 
    {
    String st;
    if(f.getSource()==ch) //Font Style
    {
    st =ch.getSelectedItem();
    if(st.equals("circle"))
    {
    this.add(textSize).setVisible(false);
    this.add(textLength).setVisible(false);
     
    this.add(textRadius).setVisible(true);
    this.add(t).setVisible(true);
    this.add(b).setVisible(true);
    }
    else if(st.equals("square"))
    {
    this.add(textRadius).setVisible(false);
    this.add(textLength).setVisible(false);
    this.add(textSize).setVisible(true);
    this.add(t).setVisible(true);
    this.add(b).setVisible(true);
    }
    else if(st.equals("line"))
    {
    this.add(textRadius).setVisible(false);
    this.add(textSize).setVisible(false);
     
    this.add(textLength).setVisible(true);
    this.add(t).setVisible(true);
    this.add(b).setVisible(true);
    }
    }
     
    }
     
     
    public void mouseClicked(MouseEvent e) 
    {
    System.out.println("azerty");
     
    }
     
     
    @Override
    public void mouseEntered(MouseEvent arg0) {
    // TODO Auto-generated method stub
     
    }
     
     
    @Override
    public void mouseExited(MouseEvent arg0) {
    // TODO Auto-generated method stub
     
    }
     
     
    @Override
    public void mousePressed(MouseEvent arg0) {
    // TODO Auto-generated method stub
     
    }
     
     
    @Override
    public void mouseReleased(MouseEvent arg0) {
    // TODO Auto-generated method stub
     
    }
    }
    Arrêtez de faire des posts dans tous les sens sinon personne ne viendra vous aider.
    Pensez à mettre les attributs de classe en private

    Il faut absolument que vous lisiez ceci.
    Pour résumer, Votre fenêtre doit posséder un panel qui redéfinisse la méthode paintComponent.
    Faites 3 classes "Rectangle" "Cercle" et "Ligne" implémentant IDrawable (cf lien ci-dessus)
    Votre bouton DRAW doit ajouter une instance de IDrawable (restangle, cercle ou ligne) à votre liste.
    La méthode paintComponent parcours la liste et appelle les méthodes draw().

Discussions similaires

  1. Réponses: 3
    Dernier message: 17/09/2006, 00h33
  2. Page aux dimensions fixes et déterminées
    Par Plumette dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 25/06/2006, 16h36
  3. Réponses: 3
    Dernier message: 11/11/2005, 15h52
  4. Libraire pour faire du dessin...????
    Par menuge dans le forum C++
    Réponses: 3
    Dernier message: 02/10/2005, 13h48
  5. Avis aux experts : accéder aux dimensions d'un tableau.
    Par poulpi dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 25/11/2004, 09h09

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