これは私の最初の疑問の投稿で、どのサイトでも、あなたが私を助けることで私を歓迎することを願っています。私はソフトウェアのメニューとして私のメインフォームでツリービューを使用しているvb.netのWindowsアプリケーションに取り組んでいます。私はenterを押すか、treenodesをクリックして新しいフォームを開くようにしています。私はtreenodeでenterを押すとすべてうまく動作しますが、メインフォームの背後にあるtreenodeの新しいフォームをクリックすると動作します。メインフォームの前に新しいフォームを表示する方法を教えてください(TopMostプロパティを設定するか、MDIParentは私のアプリケーションには適切ではありません)。事前に おかげフォームが開いているときにフォームが開いたときにtreenodeclick
Private Sub TreeView1_NodeMouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeNodeMouseClickEventArgs) Handles TreeView1.NodeMouseClick
If e.Node.Text = "Purchase" Then
Dim frm As New frm_purchase
frm.Show()
End If
End Sub
Private Sub TreeView1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TreeView1.KeyDown
If e.KeyData = Keys.Enter Then
If TreeView1.SelectedNode.Text = "Purchase" Then
Dim frm As New frm_purchase
frm.Show()
End If
End If
End Sub
試してみてください。frm.BringToFront() – Bugs
これはMDIフォームの親であり、子供はメインフォーム? –
新しいフォームの '.Owner'プロパティを設定してみてください。 –