2009-05-20 9 views
0

나는 while 루프에 의해 내용이 표시되는 Label이 있습니다. 레이블에 텍스트를 표시 할 때 올바르게 표시됩니다. 언젠가 분, 동일한 레이블에 표시되는 동일한 텍스트 및 컨트롤의 텍스트 크기가 변경됩니다.레이블 크기 변경

//Form_Load : 

Thread t = new Thread(displaySentences); 
t.Start(); 


//display sentences: 
void displaySentences() 
{ 
    while(true) 
    { 
     if(i>=5) 
      i=0; 

     label4.Text = textarray[i]; 
     i++; 

    } 

} 

첫번째 반복에서 텍스트의 사이즈 (I = 0) 번째 반복에 라벨 컨트롤의 텍스트의 크기는 다르다 : 여기

코드이다.

+0

무엇이 당신의 질문입니까? 라벨의 글꼴 크기가 예기치 않게 변경됩니까? "언젠가 분, 동일한 텍스트가 표시됩니다"라는 말의 의미를 명확히 할 수 있습니까? 귀하의 코드를 게시하면 귀하의 질문에 답변하는 데 도움이 될 것입니다. –

+0

관련 코드 샘플이 없으면이 작업을 수행 할 수 없습니다. –

답변

4

자동 크기 조정을 원하지 않습니까? autosize 속성을 false로 설정합니다.

0

나는 label4 객체의 속성을 수정하고있는 다른 곳을 찾고있을 것입니다.

사이드 노트 - 실제로 스레드를 생성하고 해당 스레드가 UI와 엉망이되어야합니까? Chris Sells는 일련의 기사를 작성하여 왜 이것이 잘못된 생각인지 설명했습니다.

+0

나는 아직도 내 문제를 해결할 수 없다. – Attilah

+0

코드를 복사하여 Windows Forms 앱에 붙여 넣었습니다. 보조 노트가 재생 중입니다. "크로스 스레드 작업이 유효하지 않습니다. 컨트롤 'Form1'이 (가) 작성된 스레드 이외의 스레드에서 액세스되었습니다. " 추가 정보 또는 더 많은 코드를 게시 할 수 없거나이 오류가 발생하지 않는 방법을 설명하는 * something *을 게시 할 수 없으면 더 이상 당신을 도울 방법을 모르겠습니다. –