2014-09-23 2 views
0

내 양식에는 특정 이벤트 (특히 '추가'에서 '제거')에 따라 프로그래밍 방식으로 목적이 변경되는 단추가 여러 개 있습니다.SetToolTip을 호출 할 때 툴팁 팝업 이벤트를 억제하는 방법이 있습니까?

이 기능 변경을 반영하여 도구 설명 텍스트를 변경하고 싶습니다. 그러나 SetToolTip이 호출되면 트리거 팝업으로 나타나고 즉시 새 도구 설명 텍스트를 표시합니다. 이 동작은 바람직하지 않습니다.

/* Change the button to 'Remove' */ 
btnAddRemove.BackgroundImage = Properties.Resources.Minus; 
toolTip.SetToolTip(btnAddRemove, "Remove"); 

/* Change the button to 'Add' */ 
btnAddRemove.BackgroundImage = Properties.Resources.Plus; 
toolTip.SetToolTip(btnAddRemove, "Add"); 

기본 동작을 재정의하는 방법이 있습니까? 편집


: 미안 해요, 난 말을해야, 팝업 이벤트를 트리거 할 것으로 보인다. SetToolTip이 호출되면 필요한 시간이 경과하지 않아도 새로운 툴팁 텍스트가 즉시 깜박입니다.

+0

무엇에 대해 이야기하고 있습니까? –

+0

'AutomaticDelay','AutoPopDelay','InitialDelay','ReshowDelay'에 대한 설정 지연 - 모두 테스트 중에'10000 '으로 설정되었습니다. – Eilidh

+1

단일 버튼의 텍스트를 변경하지 말고 'btnAdd' 및'btnRemove' 버튼 두 개를 볼 수 있습니다. 그렇게하면 텍스트/아이콘/툴팁/**을 바꾸지 않아도됩니다 ** 버튼 클릭 이벤트 **에서 추악한 검사를 수행합니다 (대신 2 개의 전용 이벤트가 추가되고 하나는 제거됨). 버튼 레이아웃은'FlowLayoutPanel' /'TableLayoutPanel'을 사용하여 쉽게 수행 할 수 있습니다. 그리고 그것들을 사용하는 것은 짧지 만 wpf 방향의 한 단계입니다. – Sinatr

답변

1

이미 거기에 있었는데, 이것은 Winforms 버그라고 생각합니다. 이 문제는 모든 컴퓨터/OS/구성에 나타나지 않지만 다음과 같이 거의 확실하게 사라질 수있는 추악한 해결 방법입니다.

toolTip1.Active = false; 
toolTip1.SetToolTip(button, "hello"); 
toolTip1.Active = true; 
+0

추악한 해결 방법입니다! 건배! :) – Eilidh

관련 문제