Fermin'in cevabını biraz daha açık hale getirebilmek için Fermin'in cevabını genişletmek istiyorum.
Çalışmakta olduğunuz formda (.Designer.cs dosyasında büyük olasılıkla), CheckedListBox'unuza bir MouseMove olay işleyicisi eklemeniz gerekir (Fermin, başlangıçta bir MouseHover olay işleyicisini önerdi, ancak bu iş için işe yaramadı. ben mi).
this.checkedListBox.MouseMove += new System.Windows.Forms.MouseEventHandler(this.showCheckBoxToolTip);
Sonraki iki sınıf araç ipucu Nihayet
private ToolTip toolTip1;
private int toolTipIndex;
gösterilen son onay kutusunu izlemek için formunuzda, bir araç ipucu nesne ve tam sayıya niteliklerini eklersek showCheckBoxToolTip uygulamak gerekir() yöntem. Bu yöntem, Fermin'in yanıtına çok benzer, ancak olay geri çağırma yöntemini ShowToolTip() yöntemiyle birleştirdim. Ayrıca, yöntem parametrelerinden birinin bir MouseEventArgs olduğunu fark edin. Bunun nedeni, MouseMove özniteliğinin bir MouseEventHandler gerektirmesi, ardından da MouseEventArgs öğesi olmasıdır.
private void showCheckBoxToolTip(object sender, MouseEventArgs e)
{
if (toolTipIndex != this.checkedListBox.IndexFromPoint(e.Location))
{
toolTipIndex = checkedListBox.IndexFromPoint(checkedListBox.PointToClient(MousePosition));
if (toolTipIndex > -1)
{
toolTip1.SetToolTip(checkedListBox, checkedListBox.Items[toolTipIndex].ToString());
}
}
}
, ' Pd çizgisi gerekli değil – Maslow