pao2888
Messages postés9Date d'inscriptionlundi 16 juillet 2007StatutMembreDernière intervention 3 juillet 2008
-
6 nov. 2007 à 19:37
memento59800900
Messages postés15Date d'inscriptionsamedi 27 janvier 2007StatutMembreDernière intervention25 avril 2008
-
25 avril 2008 à 23:03
Salut à tous.
Je suis debutante en prog. j'aimerais savoir comment je pourrais faire pour passer le focus direttement à ma textbox quand j'ouvre un form sur lequel j'ai un textbox et un comboBox sur lequel je declenche un event pour ouvrir une autre form encore..
j'ai essayé un textBox.Focus();
mais je ne prend pas le controle si je ne clique pas à l'interieur à l'aide du mouse.
Quelqu'un pourrait me filer un coup de main?
merci de votre aide en c# svp
pao2888
Messages postés9Date d'inscriptionlundi 16 juillet 2007StatutMembreDernière intervention 3 juillet 2008 7 nov. 2007 à 01:48
Salut encore à tous,
je viens d'éssayer en cliquant actived d'où je me retrouve avec ceci:
private void frPreli_Activated(object sender, EventArgs e)
{
this.textBoxUt.Focus();
}
mais quand je fais le deploy, le form s'ouvre mais je ne vois pas le curseur clignoter dans ma textBox. Quand je fais un MessageBox.Show("test"+this.textBoxUt.Focus();j'ai poutant test=true ce qui veux dire?? Ai je oublié quelque chose? je voudrais vraiment realiser cela car ainsi je pourrais me servir du tab après impression dans la textBox.
Merci du coup de main.
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 7 nov. 2007 à 08:10
Tu dis que ça ne marche pas au deploy, ça sous-entends que ça fonctionne au debug?
Tu es certain que tu n'as pas un bout de code quelque part qui donne le focus à un autre composant?
Tu fais bien un projet WinForm (= pas sous PocketPC)
pao2888
Messages postés9Date d'inscriptionlundi 16 juillet 2007StatutMembreDernière intervention 3 juillet 2008 7 nov. 2007 à 09:05
salut, je me suis mal exprimé ça marche au deploy mais ça ne fait pas ce que je veux:.
c-a-d avoir le curseur qui bouge dans la textbox à l'ouverture de mon form... je travaille avec un emulateur pour essayer ma production.. Aurais tu une idée pour me depanner? merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
pao2888
Messages postés9Date d'inscriptionlundi 16 juillet 2007StatutMembreDernière intervention 3 juillet 2008 7 nov. 2007 à 12:34
Salut à tous;
C'est un pocket pc....
Dans ma 1 form je fais un truc du genre:
Form f2=new Form();
textBox.Focus();
f2.Show();
Maintenant il me dit que mon textBox n'est pas referencé..
pourtant j'ai bien un textBox sur mon design2
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 7 nov. 2007 à 12:56
Je viens d'essayer sous PocketPC, this.textbox.Focus() dans le form_load : fonctionne nickel.
Vérifie donc que tu n'as pas du code ailleurs qui fait prendre le focus à un autre Control...
memento59800900
Messages postés15Date d'inscriptionsamedi 27 janvier 2007StatutMembreDernière intervention25 avril 2008 25 avril 2008 à 23:03
Bonsoir !
Je sais que cela fait très longtemps, mais au cas où tu te poserais toujours la question du focus pour tes applis, j'ai trouvé la solution.
Tu n'as qu'à aller faire un petit tour dans ton ".Designer.cs"
Exemple pour monForm1, va dans le fichier monForm1.Designer.cs, tu verras ainsi tout un tas de paramètres liés à chacuns de tes controles.
Exemple : (désolé d'avance pour la tartine de code, mais je veux être le PLUS CLAIR POSSIBLE avec un cas concret ^^)
//...
private void InitializeComponent()
{
this.textBox1 = new System.Windows.Forms.TextBox();
this.button1 = new System.Windows.Forms.Button();
this.label1 = new System.Windows.Forms.Label();
this.SuspendLayout();
//
// textBox1
//
this.textBox1.Location = new System.Drawing.Point(51, 86);
this.textBox1.Name = "textBox1";
this.textBox1.Size = new System.Drawing.Size(177, 20);
this.textBox1.TabIndex = 0;
//
// button1
//
this.button1.Location = new System.Drawing.Point(109, 129);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(60, 29);
this.button1.TabIndex = 1;
this.button1.Text = "OK";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(48, 50);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(64, 13);
this.label1.TabIndex = 2;
this.label1.Text = "Your name :";
//
// EnterYourName
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(284, 206);
this.ControlBox = false;
this.Controls.Add(this.label1);
this.Controls.Add(this.textBox1);
this.Controls.Add(this.button1);
this.MinimizeBox = false;
this.Name = "EnterYourName";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Enter your name : (9 characters max)";
this.Load += new System.EventHandler(this.EnterYourName_Load);
this.ResumeLayout(false);
this.PerformLayout();
}
//...
=> Tu remarqueras le paramètre : TabIndex défini pour chacun des controles (voir en gras).
L'indexe des tabulations, justement, puisqu'il défini indirectement l'ordre des focus, commence à 0.
Défini donc le paramètre TabIndex du controle dont tu veux un focus à l'ouverture à 0, et les autres dans l'ordre croissant, et le tour est joué.
Voilà, si jamais tu te posais encore la question, j'espère t'avoir aidée.
...pour les autres, si vous trouvez la solution évidente et/ou le post dénué d'intérêt, prière de ne pas vous plier en quatre de rire derrière votre bureau (sisi, je vous ai vu !), c'est pour la bonne cause.