Creation de sa propre form c# 2005

Résolu
Tyron3 Messages postés 20 Date d'inscription samedi 7 juin 2003 Statut Membre Dernière intervention 8 décembre 2006 - 27 nov. 2006 à 18:59
Tyron3 Messages postés 20 Date d'inscription samedi 7 juin 2003 Statut Membre Dernière intervention 8 décembre 2006 - 8 déc. 2006 à 00:07
 



Bonjour a tous,



Je suis débutant, et je voudrais faire une petite application pour écrire dans un *.txt, et j’aimerais que cette application est un thème visuel identique au programme au quel il est destiné.



j’ai donc créé mon image de font, pas de problème, mes boutons, fermé et réduire, j’ai glissé un picturebox et mis mon image de bouton fermer dedans et mis ceci dans le bloc



Application.exit() ;  



Je lance mon appli je clique sur le bouton ca marche parfaitement, l’appli ce ferme, mais alors pour le bouton réduction dans la barre des taches pas moyen de trouver la fonction, pouvez vous me dire quel est elle svp ?



<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>

 





Autre problème, je ne peut plus déplacer ma fenêtre puisque j’ai désactivé le controlBox,  existe-t-il  une fonction permettant a un contrôle picturebox pour pouvoir déplacer la fenêtre ?




 





Merci d’avance pour vos réponses.

7 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
27 nov. 2006 à 20:48
Oui oui, j'avais bien compris et je ne parlais pas de changer cette propriété dans le designer mais au moment où tu veux minimiser le Form :

private void label4_Click(object sender, EventArgs e)

    this.WindowState = FormWindowState.Minimized;
}

Sinon je te conseille vivement de donner des noms explicites à tes champs, ça facilite grandement la comprehension du code.

/*
coq
MVP Visual C#
CoqBlog
*/
3
Lutinore Messages postés 3246 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 27 octobre 2012 41
27 nov. 2006 à 21:55
Form.Close( ) serait plus correct que Application.Exit( ), surtout en .NET 1.1, en .NET 2.0 ça ne pose plus vraiment de problème.

Et là c'est plus simple ?

public partial class Form1 : Form
{
   private Point position = Point.Empty;



    public Form1( )
    {
        InitializeComponent( );




        PictureBox pb = new PictureBox( );
        pb.BackColor = Color.Aqua;
        pb.MouseDown += new MouseEventHandler( PictureBox_MouseDown );
        pb.MouseMove += new MouseEventHandler( PictureBox_MouseMove );
       
        this.FormBorderStyle = FormBorderStyle.None;
        this.Controls.Add( pb );
    }




    private void PictureBox_MouseDown( object sd, MouseEventArgs e )
    {
        if ( e.Button == MouseButtons.Left )
        {
            position = e.Location;;
        }
    }




    private void PictureBox_MouseMove( object sd, MouseEventArgs e )
    {
        if ( e.Button == MouseButtons.Left )
        {
            Point pos = e.Location;
            int x = this.Left + ( pos.X - position.X );
            int y = this.Top + ( pos.Y - position.Y );
            this.Location = new Point( x, y );
        }
    }
}
3
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
27 nov. 2006 à 19:24
Salut,

Pour minimiser le Form, affecte Minimized à la propriété WindowState.

Pour le déplacement tu peux regarder du côté de cette source de LUDINSKI : FENÊTRE SANS BORDURES, POUVANT ÊTRE DÉPLACÉE ET REDIMENSIONNÉE

/*
coq
MVP Visual C#
CoqBlog
*/
0
Lutinore Messages postés 3246 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 27 octobre 2012 41
27 nov. 2006 à 20:06
salut,


une alternative :


 


public partial class Form1 : Form
{
   private Point position = Point.Empty;


    public Form1( )
    {
        InitializeComponent( );


        PictureBox pb = new PictureBox( );
        pb.BackColor = Color.Aqua;
        pb.MouseDown += delegate( object sd, MouseEventArgs e )
        {
            if ( e.Button == MouseButtons.Left )
            {
                position = e.Location;;
            }
        };


        pb.MouseMove += delegate( object sd, MouseEventArgs e )
        {
            if ( e.Button == MouseButtons.Left )
            {
                Point pos = e.Location;
                int x = this.Left + ( pos.X - position.X );
                int y = this.Top + ( pos.Y - position.Y );
                this.Location = new Point( x, y );
            }
        };


        this.FormBorderStyle = FormBorderStyle.None;
        this.Controls.Add( pb );
    }
}
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Tyron3 Messages postés 20 Date d'inscription samedi 7 juin 2003 Statut Membre Dernière intervention 8 décembre 2006
27 nov. 2006 à 20:37
Désoler je me fait certainement mal comprendre de part ma maigre connaissance, merci coq d’avoir répondu, mais je ne souhaite pas que ma fenêtre ce mette en barre des tache a l’ouverture mais qu’elle si mette quand l’utilisateur clique sur le contrôle picturebox, en remplacement de ceux que j’ai enlever par défaut.



Merci pour ta réponse lutinore, mais c’est beaucoup trop compliqué pour moi ^^



<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>

 





Voici mon code pour le label pour la sortie du programme, j’ai changer finalement j’avais pas besoin de faire un bouton en image ca marche aussi avec du texte.




       
private
void label3_Click(object sender, EventArgs e)






        {






           
Application.Exit();






        }





Ici mon label pour la reduction






       
private
void label4_Click(object sender, EventArgs e)






        {






            ???






        }

 





 





Merci en tout cas.
0
Tyron3 Messages postés 20 Date d'inscription samedi 7 juin 2003 Statut Membre Dernière intervention 8 décembre 2006
27 nov. 2006 à 23:29
merci coq, je debute vraiment desolé ^^. pas encore cela lutinore , je comprendrais un jour si j'insiste merci a tout les deux pour vos reponses rapides et precise ;o)
0
Tyron3 Messages postés 20 Date d'inscription samedi 7 juin 2003 Statut Membre Dernière intervention 8 décembre 2006
8 déc. 2006 à 00:07
merci beaucoup lutinore ca marche tres bien juste une petite boite bleu dans l'angle mais je vais trouver le soucie merci, c'est tres claire comme cela ^^
0
Rejoignez-nous