저는 VS2013의 VB.NET 4.5 프로젝트에서 작업하고 있습니다.RichTextBox에서 문자열의 모든 인스턴스에 대한 글꼴 스타일 변경
양식에 richtextbox가 있고 단추를 클릭하면 richtextbox에서 발견 된 특정 문자열의 모든 인스턴스에서 굵게 설정을 전환해야합니다.
this question을 기반으로 몇 가지 코드를 작성했습니다.
Private Sub ToggleBold()
rtxtOutputText.SelectionStart = rtxtOutputText.Find("@#$%", RichTextBoxFinds.None)
rtxtOutputText.SelectionFont = New Font(rtxtOutputText.Font, FontStyle.Bold)
End Sub
토글 굵게 버튼을 클릭하면 "@ # $ %"문자열의 첫 번째 인스턴스 만 굵게 표시됩니다.
어떻게 문자열의 모든 인스턴스를 굵게 설정할 수 있습니까? 함께 묶인 것도 여러 가지가있을 수 있으므로 ("@ # $ % @ # $ % @ # $ %"), 각각의 속성을 굵게 표시해야합니다.
강조/선택/특수 Font * once *를 정의하고 동일한 인스턴스를 다시 사용하는 것이 좋습니다. 폰트는 IDisposable입니다. – Plutonix
@Plutonix : 당신은 그것에 대해 확실히 옳습니다! 나는 그렇게 생각했지만 마음이 바뀌었다 :). 또한 새로운 글꼴 객체를 컨트롤에 영향을 미치지 않고 안전하게 여기에 배치 할 수 있습니까? 아니면 문자열 인스턴스처럼 한번 정의해야합니까? –
당신은'Using' 블럭에 넣을 수 있습니다,하지만 왜 처음부터 새로운 폰트를 반복해서 만들어야합니까? – Plutonix