Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » .NET - Состояние индикаторов CapsLock и NumLock в StatusStrip (WindowsForms)

Ответить
Настройки темы
.NET - Состояние индикаторов CapsLock и NumLock в StatusStrip (WindowsForms)

Аватара для Ikari

Новый участник


Сообщения: 18
Благодарности: 0

Профиль | Отправить PM | Цитировать


Добрый день.
Подскажите, пожалуйста, как возможно отобразить состояние индикаторов CAPS/NUM Lock в строке состояний StatusStrip Windows Forms.
Пытался действовать исходя из примеров:
раз, два, однако в приложении ничего не отображается.
Создал новый проект, добавил элемент StripStatusLabel и попытался вывести информацию на него.
Проявилась одна странность: выполнение происходит только в методе инициализации.
Код: Выделить весь код
public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
        toolStripStatusLabel1.Text = "111";
    }
}
НО в других методах это не работает.
Код: Выделить весь код
using System.Diagnostics;
namespace WindowsFormsApplication3
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            //toolStripStatusLabel1.Text = "111";
        }
        public void Form2_KeyDown(object sender, KeyEventArgs e)
        {
            Debug.Write("123");
            toolStripStatusLabel1.Text = "222";
        }
    }
}
Вывод не происходит ни в элемент StripStatusLabel, ни в TextBox, ни в Output
Код: Выделить весь код
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Diagnostics;

namespace WindowsFormsApplication3
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            KeyDown += tst;
        }

        public void TextBoxTest()
        {
            textBox1.Text = "onetwo";
        }

        private void tst(object sender, KeyEventArgs e)
        {
            if ((e.KeyCode & Keys.KeyCode) == Keys.CapsLock)
            {
                if (Control.IsKeyLocked(Keys.CapsLock))
                    toolStripStatusLabel1.Text = "Caps";
            }
        }
    }
}
Скажите, пожалуйста, что я делаю неправильно.
Спасибо!

-------
Нужный человек в нужном месте может изменить мир (hl2)


Отправлено: 13:04, 15-03-2016

 

Аватара для Ikari

Новый участник


Сообщения: 18
Благодарности: 0

Профиль | Отправить PM | Цитировать


Проблема решена:
Код: Выделить весь код
protected override void WndProc(ref Message m)
{
    base.WndProc(ref m);
    toolStripStatusLabel1.ForeColor = IsKeyLocked(Keys.CapsLock) ? statusStrip1.ForeColor : statusStrip1.BackColor;
    toolStripStatusLabel2.ForeColor = IsKeyLocked(Keys.NumLock) ? statusStrip1.ForeColor : statusStrip1.BackColor;
}
Всем спасибо!

-------
Нужный человек в нужном месте может изменить мир (hl2)


Отправлено: 09:19, 16-03-2016 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » .NET - Состояние индикаторов CapsLock и NumLock в StatusStrip (WindowsForms)

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Офис и Текст - удаленное отключение CapsLock Quaker_75 Программное обеспечение Windows 4 01-03-2016 15:49
Разное - Сборка 9879. Перестали работать CapsLock, NumLock, ScrolLock. DrStalker Microsoft Windows 10 3 10-12-2014 02:48
Разное - APC Line-R сбой с миганием индикаторов 3абанен Прочее железо 3 17-11-2014 16:01
Интерфейс - Отображение включения CapsLock igor.v500@fb Microsoft Windows 7 1 14-08-2013 18:18
[решено] Ноут Acer 5551g-n534g32mick не включается ничего кроме индикаторов Farengeit Непонятные проблемы с Железом 3 13-01-2012 14:24




 
Переход