タイトル : Labelのダブルクリックでテキストのコピーが邪魔 投稿日 : 2025/05/26(Mon) 23:24 投稿者 : たこやき
マイクロソフトの中の○×△□がバージョンアップするときに余計なことをしたらしいです。 Labelをダブルクリックをすると、Label.Textがクリップボードに自動コピーされるように変わったそうです。 新しいバージョンではe.Cancel=Trueで自動コピーを停止できますが、 古いバージョンではe.Cancelのメンバー自体がありません。 なのに、自動コピーをデフォルトにしたようです。 つまり自動コピーを普通に止めることができません。 愚かで愚かで迷惑千万な話です。 仕方が無いのでコーディングしてみました。 透明のPictureBoxをLabelの上に載せて、Labelを直接クリックできなくしましたが、 …泥臭くて格好悪いです。 Private Shared Function CoverLabelWithPictureBox( _ ByVal Label As System.Windows.Forms.Label _ ) As Integer '省略割愛 Return CoverLabelWithPictureBox(Label, New System.Windows.Forms.PictureBox) '省略割愛 End Function Private Shared Function CoverLabelWithPictureBox( _ ByVal Label As System.Windows.Forms.Label, _ ByVal PictureBox As System.Windows.Forms.PictureBox _ ) As Integer '省略割愛 Dim lbl As System.Windows.Forms.Label Dim pct As System.Windows.Forms.PictureBox '省略割愛 lbl = Label pct = PictureBox If pct.BackColor <> Color.Transparent Then pct.BackColor = Color.Transparent If pct.Left <> 0 Then pct.Left = 0 If pct.Top <> 0 Then pct.Top = 0 If pct.Width <> lbl.Width Then pct.Width = lbl.Width If pct.Height <> lbl.Height Then pct.Height = lbl.Height If Not pct.Parent Is lbl Then pct.Parent = lbl '省略割愛 'おまけ、'Private WithEvents PictureBox1 As New System.Windows.Forms.PictureBox End Function この泥臭いコードより、良い感じのコードがあるなら、教えてください。 |