필자는 TCanvas 요소와 결합 된 Windows API를 사용하여 Delphi에서 고급 텍스트 편집기 구성 요소 (고정 너비, 구문 강조 표시 등)를 작성했으며 한 가지를 제외하면 훌륭하게 작동합니다. TEdit과 같은 캐럿을 표시하는 동일한 응용 프로그램 내에서 다른 컨트롤에 포커스를 설정하면 내 편집기 구성 요소에서 포커스를 훔치기 때문에 새 편집기 (예 : TEdit)의 캐럿이 표시되지 않습니다. 대신에 편집기 요소에서 캐럿이 이동합니다! 예를 들어, 새 편집기 (TEdit)에 문자를 쓰면 예상대로 표시되고 내 구성 요소의 오른쪽으로 캐럿이 이동합니다. 무엇이 이것을 일으킬 수 있습니까? Win API의 키보드 포커스 처리와 VCL 처리 사이에 약간의 충돌이있을 것으로 생각됩니다. 내 편집기 구성 요소에서 WM_KILLFOCUS에 대한 응답으로 WM_SETFOCUS 및 DestroyCaret에 대한 응답으로 CreateCaret을 사용합니다. 새 편집 컨트롤이 새로운 모달 창에있는 경우에만 문제가 발생하는 것 같습니다.캐럿이 보여주는 델파이 포커스 문제
답변
구성 요소 코드에 사소한 버그가 있습니다. 내 사과.
그런 다음 대답 (Loren 's or yours)을 수락하십시오. 그것은 답변되지 않은 깃발을 제거합니다. –
4 시간 후에 그렇게하겠습니다. (서버가 지금 내게 그것을 허락하지 않을 것이다.) –
첫 번째 생각은 WM_KILLFOCUS 메시지가 표시되지 않는다는 것입니다. 나는 그것이 일어나고 있는지 여부를 알려주는 진단서를 만들 것입니다.
저는 입니다.은 이런 종류의 문제를 해결하기 위해 디버거를 사용하고자하는데, 이와 같은 상호 작용을 진단 할 때 제목 수정이 더 효과적이라고 생각합니다.
고마워,하지만 나는 코드가 실행된다는 긍정적이다. (나는 삐 소리가났다.) –
- 1. 블랙리스트의 포커스 피 포커스 문제
- 2. 스윙 포커스 문제
- 3. EditText 포커스 문제
- 4. 주기 포커스 문제 -
- 5. WPF 포커스 문제
- 6. 포커스 문제 추적 (JTabbedPane)
- 7. 자바 스윙 : 포커스 문제
- 8. Vista Window 포커스 문제
- 9. 포커스 손실시 AutoCompleteTextView 문제
- 10. 자바 스크립트 포커스 문제
- 11. WPF의 TextBox 포커스 문제
- 12. 버튼 키보드 포커스 문제
- 13. WPF TabItem 포커스 문제
- 14. C# 목록보기 포커스 문제
- 15. 델파이 타이머 문제
- 16. 델파이 ReadProcessMemory 문제
- 17. 델파이 {$ IFDEF 콘솔} 문제
- 18. TdxComponentPrinter 문제 (델파이)
- 19. 델파이 문제 tdbrichedit
- 20. Jquery UI 슬라이더 포커스 문제
- 21. HTML 및 Flex 포커스 문제
- 22. WPF 전체 화면 포커스 문제?
- 23. Android 요구 사항 포커스 문제
- 24. winform 및 포커스 키 문제
- 25. WPF 키보드 문제 itemControl의 포커스
- 26. html 편집기 커서 포커스 문제
- 27. 응용 프로그램과 포커스 전환 문제
- 28. Tinymce mceToggleEditor 스크롤/포커스 문제
- 29. Firefox contentEditable div 포커스 문제
- 30. 델파이 XE - DATASNAP 필터 문제
코드 예제가 없으면 하나만 추측 할 수 있습니다. WM_KILLFOCUS를받은 후 텍스트 편집기 구성 요소가 잘못된 WM_SETFOCUS 메시지를 받고 포커스를 잃어 버렸을 수 있습니다. – kludg
불행히도, 그게 아니야 ... –