Problemes...

Résolu
Acidkepler Messages postés 38 Date d'inscription vendredi 3 septembre 2004 Statut Membre Dernière intervention 21 mars 2006 - 11 sept. 2005 à 19:28
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 - 11 sept. 2005 à 22:11
Je suis en C# et je dois faire en sorte que je puisse déplacer mon formulaire à gauche, en bas et en haut par un boutton.

Mais quand je le fais, il me dis qu'il ne peut pas l'assigner car il est en lecture seule mais pourtant quand je l'ai fait pour qu'il ce déplace vers la droite, ça a fonctionner.

Je ne sais pas quoi faire, je débute, merci à l'avance

4 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
11 sept. 2005 à 22:11
private void btnDeplacerFormulaireVersGauche_Click(object sender, System.EventArgs e)
{
int Control=Right;
Control = Right + 15; // il ne se déplace pas vers la gauche...
}

Déjà tu ne fais rien du résultat de ton calcul, il ne risquait donc pas de se déplacer.
Ensuite il est vrai comme le dit Bidou que Right est en lecture seule, mais dans ton cas, le déplacement, il suffit de faire :

=>

private void btnDeplacerFormulaireVersGauche_Click(object sender, System.EventArgs e)
{
this.Left -= 15;
}

Sinon personnellement j'aurais tendance à avoir une petite préférence pour la méthode SetBounds, à laquelle font de toutes façon appel les propriétés, ou directement SetBoundsCore :

private const int MOVE_SIZE = 10;


private void button_Up_Click(object sender, System.EventArgs e)
{
this.SetBounds(
this.Location.X,
this.Location.Y - MOVE_SIZE,
this.Width,
this.Height,
BoundsSpecified.Y);
}


private void button_Down_Click(object sender, System.EventArgs e)
{
this.SetBounds(
this.Location.X,
this.Location.Y + MOVE_SIZE,
this.Width,
this.Height,
BoundsSpecified.Y);
}


private void button_Left_Click(object sender, System.EventArgs e)
{
this.SetBounds(
this.Location.X - MOVE_SIZE,
this.Location.Y,
this.Width,
this.Height,
BoundsSpecified.X);
}


private void button_Right_Click(object sender, System.EventArgs e)
{
this.SetBounds(
this.Location.X + MOVE_SIZE,
this.Location.Y,
this.Width,
this.Height,
BoundsSpecified.X);
}

Cocoricoooooooo !!!!
coq
MVP Visual C#
3
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
11 sept. 2005 à 20:08
Salut, ou plutot devrais je dire Re-salut,

Montre le code incriminé stp

PS : tu pouvais très bien continuer l'autre post...

Cocoricoooooooo !!!!
coq
MVP Visual C#
0
Acidkepler Messages postés 38 Date d'inscription vendredi 3 septembre 2004 Statut Membre Dernière intervention 21 mars 2006
11 sept. 2005 à 20:34
private
void btnAgrandirFormulaireEnLangeur_Click(
object sender, System.EventArgs e)


{


Width = Width + 5;


}



private
void btnDeplacerFormulaireVersGauche_Click(
object sender, System.EventArgs e)


{



int Control=Right;


Control = Right + 15; // il ne se déplace pas vers la gauche...


}



private
void btnDeplacerFormulaireVersDroite_Click(
object sender, System.EventArgs e)


{


Left = Left + 10;


}



private
void btnAgrandirFormulaireEnHauteur_Click(
object sender, System.EventArgs e)


{


Height = Height + 10;


}
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
11 sept. 2005 à 20:46
Salut,
Les properties pour changer la grandeur d'un control ou le déplacer sont en lecture seule.
Tu peux faire qqch comme ça (pour l'agrandissement par exemple):

private void Agrandir(int x, int y)
{
this.Size = new Size(this.Size.X + x, this.Size.Y + y);
}

[Pub] http://www.csharpfr.com/auteurdetail.aspx?ID=13319 [\Pub]
C# forever
0
Rejoignez-nous