如何使用发送密钥将值从一个表单传递到另一个表单

本文关键字:表单 一个 另一个 何使用 密钥 | 更新日期: 2023-09-27 18:30:58

>我有一个问题。我有这个Mainform,它包含一个虚拟键盘,并希望在我的另一个表单中输入文本。我的问题是当我单击主窗体上的虚拟键盘时,第二个窗体变为非活动状态。因此,当我键入时,其他形式中不会出现任何字母。

有没有办法使这两种形式活跃起来?还是有没有其他方法可以解决这个问题?

谢谢。

如何使用发送密钥将值从一个表单传递到另一个表单

您可以使用以下代码激活Windows。但我认为你想要的是以下链接,

http://www.codeproject.com/Articles/13596/Touchscreen-Keyboard-UserControl

public class Win32 : IWin32
{
    //Import the FindWindow API to find our window
    [DllImport("User32.dll", EntryPoint = "FindWindow")]
    private static extern IntPtr FindWindowNative(string className, string windowName);
    //Import the SetForeground API to activate it
    [DllImport("User32.dll", EntryPoint = "SetForegroundWindow")]
    private static extern IntPtr SetForegroundWindowNative(IntPtr hWnd);
    public IntPtr FindWindow(string className, string windowName)
    {
        return FindWindowNative(className, windowName);
    }
    public IntPtr SetForegroundWindow(IntPtr hWnd)
    {
        return SetForegroundWindowNative(hWnd);
    }
}
public class SomeClass
{
    public void Activate(string title)
    {
        //Find the window, using the Window Title
        IntPtr hWnd = win32.FindWindow(null, title);
        if (hWnd.ToInt32() > 0) //If found
        {
            win32.SetForegroundWindow(hWnd); //Activate it
        }
    }
}