[英]Where is the Winforms "application framework" in C# that exists in VB.NET?
[英]How to get other application(calculator) bring to front in winforms via vb.net?
這可能是一個非常常見的問題,但我找不到正確的答案。
如果發現任何內容,請使用原始鏈接標記此副本。
說,我有一個帶按鈕的winform。
我想打開另一個應用程序,例如 windows 計算器。
所以在按鈕單擊上,我添加了這個。
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim MyApp As System.Diagnostics.Process = New System.Diagnostics.Process
MyApp.StartInfo.FileName = "C:\Windows\system32\calc.exe"
MyApp.Start()
Dim p() As Process = Process.GetProcessesByName("Calculator")
If p.Count > 0 Then
/*Something like bring that calc to front*/
Else
MyApp.Start()
End If
End If
End Sub
現在,如果 calc 在 winform 后面,我想要將 calc 放在前面。
如果沒有打開計算,那么它將打開新的,否則它將把前一個放在前面。
專門用於計算器:
Public Declare Function BringWindowToTop Lib "user32" (ByVal HWnd As IntPtr) As Boolean
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim calc As Process = Process.GetProcesses.FirstOrDefault(Function(p) p.MainWindowTitle = "Calculator")
If Not IsNothing(calc) Then
BringWindowToTop(calc.MainWindowHandle)
Else
Process.Start("C:\Windows\system32\calc.exe")
End If
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.