小编Imo*_*zid的帖子

在后台捕获键盘按键

我有一个在后台运行的应用程序.每当用户F12随时按下时,我都必须生成一些事件.所以我需要它来捕捉按键.在我的应用程序中,如果用户按任何时间F10某些事件将被执行.我不明白该怎么做?

有谁知道怎么做?

N:B:这是一个winforms应用程序.它不需要关注我的形式.我的主窗口可能仍保留在系统托盘中,但仍然需要捕获按键.

c# keypress winforms

19
推荐指数
2
解决办法
3万
查看次数

C# 中标签高度和宽度的自动调整大小

我的标签尺寸为(47, 15),我的表单尺寸为(561, 270)。当我的 label.text 比窗口大小长时,文本的最后部分不会出现。我如何相对于我的窗口动态调整标签文本的高度和宽度。也就是说,当文本是比窗口长,那么文本将出现在某些行而不是一行。我怎样才能做到这一点????

c# label winforms

6
推荐指数
2
解决办法
2万
查看次数

使用C#中的全局热键进行密钥捕获

我有一个在后台运行的应用程序,就像我可以将我的应用程序保存在系统托盘中.如果它仍然在系统托盘上,我的应用程序将完成它的工作.每当用户按F10或F9时,将完成一些工作.我试过这个:

public partial class Form1 : Form
{
    public int a = 1;

    [DllImport("user32.dll")]
    public static extern bool RegisterHotKey(IntPtr hWnd, int id, int fsModifiers, int vlc);
    [DllImport("user32.dll")]
    public static extern bool UnregisterHotKey(IntPtr hWnd, int id);


    [DllImport("User32.dll")]
    private static extern short GetAsyncKeyState(System.Windows.Forms.Keys vKey);
    [DllImport("User32.dll")]
    private static extern short GetAsyncKeyState(System.Int32 vKey);

    const int MYACTION_HOTKEY_ID = 1;

    public Form1()
    {
        InitializeComponent();
        RegisterHotKey(this.Handle, MYACTION_HOTKEY_ID, 0, (int) Keys.F9);
        RegisterHotKey(this.Handle, MYACTION_HOTKEY_ID, 0, (int)Keys.F10);

        this.ShowInTaskbar = false;
    }

    protected override void WndProc(ref Message m)
    {
        if (m.Msg …
Run Code Online (Sandbox Code Playgroud)

c# keyboard-hook global-hotkey

4
推荐指数
1
解决办法
2165
查看次数

如何循环遍历C#中的多个复选框

我在winfrom中有100个复选框.他们的名字是顺序像checkbox1,checkbox2等.我在winform中有一个提交按钮.单击提交按钮后,它会检查是否选中了复选框,然后更新某个值,否则更新另一个值.我必须选中100复选框.所以我必须遍历100复选框以检查是否选中了复选框.

我知道如何选中复选框

private void sumit_button_Click(object sender, EventArgs e)
{
     if (checkbox1.Checked)
     { 
        //  update 
     }
     else
     {  
        // update another  
     }

     if (checkbox2.Checked)
     {  
        //  update    
     }
     else
     {   
        // update another  
     }

     ......................and so on

} 
Run Code Online (Sandbox Code Playgroud)

但是我怎么能这样做100个复选框???

c# checkbox

4
推荐指数
2
解决办法
2万
查看次数

在用户屏幕上设置窗口的默认位置

我有一个 Windows 窗体应用程序。我希望当应用程序运行时,我的窗口将始终只在任务栏上,在右侧意味着在用户屏幕的右下角。用户屏幕分辨率是多少并不重要.所以我该怎么做???

c# winforms

1
推荐指数
1
解决办法
1393
查看次数

在C#中的一个操作中处理多个按钮操作

我有70个按钮,其名称类似于button1,button2,button3等.我的目标是每当点击button1时,它会说"1",button2会说"2",依此类推.

button1的代码是:

SpeechSynthesizer synthesizer = new SpeechSynthesizer();

private void button1_Click(object sender, EventArgs e)
{
    synthesizer.Speak("1");
}
Run Code Online (Sandbox Code Playgroud)

对于button2

private void button2_Click(object sender, EventArgs e)
{
    synthesizer.Speak("2");
}
Run Code Online (Sandbox Code Playgroud)

等等其他68个按钮.

现在很难实现70按钮的动作.这些按钮操作遵循一种模式 - 所以任何人都可以建议一种更有效的方法来实现这些按钮处理程序以节省我写出70种不同的操作吗?

c# button

1
推荐指数
1
解决办法
1285
查看次数