begin process at 2012 02 10 15:50:38
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C#

 > 

Archives

 > 

Au secours

 > 

Refresh() automatique dans un control !!!


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Refresh() automatique dans un control !!!

jeudi 6 octobre 2005 à 01:50:25 | Refresh() automatique dans un control !!!

silver_the_paladin

Bonjour tout le monde,

voila je suis sur un programme qui récupère le contenu d'un application console en temp réel, le problème vient de ma TextBox qui apparement fait un Refresh() a chaque fois que je lui passe du texte et remet automatiquement le curseur au début (alors que moi je veut afficher la fin). Donc a chaque fois je me retrouve a voir le début, la fin, le début, la fin, etc.... Ma question est la suivante : Est il possible de forcer le TextBox a ne pas faire de refresh()?

voici une partie du code :

private void MaFonction()
{
   Process myproc =
new Process();

   myproc.StartInfo.FileName = "monprog.exe";
   myproc.StartInfo.RedirectStandardOutput =
true;
   myproc.StartInfo.UseShellExecute =
false;
   myproc.StartInfo.CreateNoWindow =
true;
   myproc.Start();

   while(myproc.StandardOutput.Peek() != -1)
   {
      
textBox1.Text += myproc.StandardOutput.ReadLine();
      textBox1.SelectionStart = textBox1.Text.Length;
      textBox1.ScrollToCaret();
   }
}

J'espère que quelqun va pouvoir m'aider (Cocoricoo p-e ?? ) merci d'avance

jeudi 6 octobre 2005 à 08:34:02 | Re : Refresh() automatique dans un control !!!

taoetc

Si tu as ca, textBox1.ScrollToCaret(); ca veut dire que tu utilise plutot une richtextbox
 Je connais pas trop ce controle, mais je l'ai quand meme utiliser, et pour ajouter du texte, je ferais simplement :

 while(myproc.StandardOutput.Peek() != -1)
   {
      textBox1.SelectedText = myproc.StandardOutput.ReadLine();
      textBox1.SelectionStart = textBox1.Text.Length;
      textBox1.ScrollToCaret();
   }



In the mood for ... ba heu, for quelque chose qui est vachement bien ( oui je sais , n'importe quoi)

jeudi 6 octobre 2005 à 10:13:45 | Re : Refresh() automatique dans un control !!!

MorpionMx

Membre Club Administrateur CodeS-SourceS
taoetc -> Le TextBox a aussi une méthode ScrollToCaret, qui est utile quand tu utilises un TextBox avec la propriété MultiLine à True

Mx
jeudi 6 octobre 2005 à 10:25:05 | Re : Refresh() automatique dans un control !!!

taoetc

Oups, j'avais regardé pour tant ce matin, mais trop tot, c'est trop tot , et il faut croire que je loupes une ligne sur deux avant 9h
Encourageant pour le code que j'ai écrit

bon alors , pour le pb, y a pas de raison que ca marche pas
fait autrement
string textSortie= string.empty;
while
(myproc.StandardOutput.Peek() != -1)
   {
      textSortie+= myproc.StandardOutput.ReadLine();
      textBox1.Text= textSortie;
      textBox1.ScrollToCaret();
   }

Mais c'est pas tres beau ca

In the mood for ... ba heu, for quelque chose qui est vachement bien ( oui je sais , n'importe quoi)
jeudi 6 octobre 2005 à 10:29:32 | Re : Refresh() automatique dans un control !!!

taoetc

Et je viens de relir le post du début , et j'ai encore rien compris, je vais arrete la les réponses

La richtextbox marche bien pour ton probleme , donc, ma premiere réponse était pas si mauvaise ,


Désolé pour les post précédent


In the mood for ... ba heu, for quelque chose qui est vachement bien ( oui je sais , n'importe quoi)
jeudi 6 octobre 2005 à 15:40:12 | Re : Refresh() automatique dans un control !!!

Lutinore

Administrateur CodeS-SourceS
Réponse acceptée !

Salut, essayes quelque chose comme ça:




this.textBox.ScrollBars = ScrollBars.Both;
this.textBox.TextChanged += new EventHandler( textBox_TextChanged );

private void textBox_TextChanged( object sender, EventArgs e )
{
    this.textBox.Focus( );
    this.textBox.Select( this.textBox.Text.Length, 0 );
    this.textBox.ScrollToCaret( );
}

ScrollToCaret marche uniquement si le contrôle est visible et si il à le focus.

TextBox a aussi une méthode AppendText( string text ).

jeudi 6 octobre 2005 à 20:56:59 | Re : Refresh() automatique dans un control !!!

silver_the_paladin

Réponse acceptée !
Merci beaucoup pour tous vos conseils, j'ai trouvé, c'était simplement le TextBox.AppendText(message) qui fallait utilisé, car la il place toujours le curseur à la fin (me demandé pas pk lol)

merci à tous :-)


Cette discussion est classée dans : refresh, début, textbox1, startinfo, myproc


Répondre à ce message

Sujets en rapport avec ce message

UAC et Process.Start [ par scoubidou944 ] bonsoir,j'ai une petite application qui tourne dans le system tray avec des droits normaux.Or elle doit lancer l'autre appli qui elle demande l'élévat Récupérer nom du composant cliqué [ par LordOfTheShadow ] Hello (ou plustot bonsoir)J'ai plein de composants sur un formulaire. Certains font la même action que d'autres et sont directement relié au même évèn Fonction -> WaitForExit() [ par kerma26 ] Bonjour,Bon ben j'ai cherché dans le forum, mais je n'ai pas trouvé mon bonheur. Mon problème c'est que je n'arrive pas à utiliser la fonction "WaitFo DataGridView et Linq [WinForms]: Probleme de refresh [ par testpresta ] Bonjour à toutes et à tous !Je viens de faire une application winforms toute simple en c#:- J'ai créé une base de données sql server (fichier mdf)- J' Gestion d'événement suite à compilation [ par docofwar ] Bonjour, je m'explique, j'ai un petit souci.J'ai créé une application. Dans celle-ci j'ai plusieur bouton qu'il appelle un compilo spécifique. Je redi interface graphique [ par medinfo87 ] salut tt le monde :private void textBox2_Click(object sender, EventArgs e){if (textBox1.Text == ""){                MessageBox.Show("le champs identif ecrire dans une panel [ par fayrous ] Salut tout le monde , dans mon form j'ai un textBox ,un button et une panel je veux afficher le texte dans la panel et voila le code private void but interface graphique en c# [ par baby85 ] salut,je veux utiliser un texbox mis dans un interface form1 dans un autre interface form2je fais une methode dans la classe form1 qui retourne la val Problème de Refresh() dans un System.Forms [ par Tsushi ] Bonjour tout le monde.Voila voila j'ai un petit problème sur un form. A l'aide du framework Tao, mes prédecesseurs ont incorporé une fenêtre openGl da ajouter ligne dynamiquemet textBox [ par GranPicS ] Bonjour, J'aimerais savoir s'il est possible de rajouter des lignes dynamiquement sur une textBox.Je m'explique:Je développe un webService qui doit ré


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 15,506 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales