알림을 표시하는 디지털 사이 니지 응용 프로그램을 작성해야합니다. 텍스트가 사용자가 설계 할 수있는 기능을 갖게되면 서식있는 텍스트 상자 컨트롤에 대해 생각하고 텍스트가 자동으로 세로로 (예 : "뉴스"텍스트 상자) 스크롤됩니다. 아이디어가 있으십니까?RichTextBox 세로 자동 스크롤 텍스트
0
A
답변
0
좋아요. 나는 기차를 기다리는 동안 현재이 편지를 쓰고 있습니다. 그래서 이걸 시험하지는 않았지만, 이런 일이 트릭을해야합니다.
참고
당신이이
디버깅 목적을 제외하고 CheckForIllegalCrossThreadCalls = False
로 설정하지 마십시오 CheckForIllegalCrossThreadCalls
오류를 얻을 경우.
처음에는 아무 것도 눈치 채지 못하지만, CheckForIllegalCrossThreadCalls = False
을 사용하면 나중에 트랙이 다운되는 문제가 발생할 수 있습니다.
모든 내용은 다음과 같습니다. 코드는 다음과 같습니다.
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
TextBox1.SelectionStart = 0 ''Change to a RichTextBox if you want.
''Starting the background worker.
BackgroundWorker1.RunWorkerAsync()
End Sub
Private Sub BackgroundWorker1_DoWork(sender As Object, e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
''BACKGROUND WORKER''
For i = 0 To TextBox1.Text.Length
TextBox1.SelectionStart = i
System.Threading.Thread.Sleep(200)''changing the sleep time will make the textbox scroll to the right faster or slower.
Next
End Sub
Private Sub BackgroundWorker1_RunWorkerCompleted(sender As Object, e As System.ComponentModel.RunWorkerCompletedEventArgs) Handles BackgroundWorker1.RunWorkerCompleted
''Once completed, The background worker will start again.
TextBox1.SelectionStart = 0
BackgroundWorker1.RunWorkerAsync()
End Sub
Private Sub Form1_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing
''This should stop the program from crashing when closing if the background worker is still running
BackgroundWorker1.CancelAsync()
End Sub
End Class
참고
당신은 배경 노동자 또는 Loop
이 완료 될 때까지 응답하지 않을 것입니다 다른 프로그램을 사용해야합니다.
다시 한번 CheckForIllegalCrossThreadCalls
오류가 발생하는 경우 Google에서 살펴본 후이 문제를 해결하기 위해 검색하십시오. 그러나 기꺼이 해결할 경우 CheckForIllegalCrossThreadCalls = False
이상 남겨 두어야합니다.
당신이 어떻게 가는지를 알려주세요. 나는 이것을 테스트하지 않았습니다. 그러나 아무도 당신에게 10 시간 안에 응답하지 않았기 때문에, 그것을 테스트 할 컴파일러없이 시도해 보았습니다.
코드까지? WM_SCROLL 메시지를 서식있는 텍스트 상자에 주기적으로 보낼 수 있습니다. 스크롤이 아래쪽을 칠 때 어떤 일이 발생해야합니까? HTML 페이지 (자바 스크립트에서 스크롤링을 처리 할 수 있음)로 더 나은 제어가 가능하며 WebBrowser 컨트롤을 사용하여 VB.NET 프로그램에 표시 될 수 있습니다. – dlatikay