2 / 2 / 0
Регистрация: 08.01.2016
Сообщений: 42

При нажатии клавиши в английской раскладке, выводить русское значение клавиши

04.02.2016, 11:29. Показов 2102. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Требуется чтобы при нажатии клавиши в английской раскладке, выводилось Русское значение клавиши. Например q это й. По возможности с учетом регистра.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.02.2016, 11:29
Ответы с готовыми решениями:

При нажатии клавиши I проверить и вывести на экран состояние клавиши Insert
Добрый день, помогите с заданием при нажатии клавиши I проверить и вывести на экран состояние клавиши Insert очень далек от...

При нажатии клавиши «I» проверить и вывести состояние клавиши insert
Написать программу : при нажатии клавиши «I» проверить и вывести состояние клавиши insert Добавлено через 7 минут при нажатии...

Включать курсор при нажатии левой клавиши, а выключать по нажатию правой клавиши мыши
Нужно: Включать курсор при нажатии левой клавиши, а выключать по нажатию правой клавиши мыши. Почему не работает? И что сделать, чтобы...

3
Покинул форум
3700 / 1483 / 355
Регистрация: 07.05.2015
Сообщений: 2,903
04.02.2016, 12:21
Лучший ответ Сообщение было отмечено SatanaXIII как решение

Решение

Вариант "в лоб":
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
using System;
using System.Linq;
using System.Text;
using System.Collections;
using System.Globalization;
 
internal sealed class Program {
  static void Main() {
    Int32 n = 0;
    String s;
    StringBuilder sb = new StringBuilder();
    Hashtable ht = new Hashtable();
    Char[] ru = "ФИСВУАПРШОЛДЬТЩЗЙКЫЕГМЦЧНЯ".ToCharArray();
    
    Enumerable
        .Range(65, 26)
        .Select(i => (Char)i)
        .ToList()
        .ForEach(i => {
          ht.Add(i, ru[n]);
          n++;
    });
    ht.Add('<', 'Б');
    ht.Add(',', 'б');
    ht.Add(':', 'Ж');
    ht.Add(';', 'ж');
    ht.Add('"', 'Э');
    ht.Add('\'', 'э');
    ht.Add('>', 'Ю');
    ht.Add('.', 'ю');
    
    Console.Write("Введите слово (например, \"ktrnhbr): ");
    s = Console.ReadLine();
    if (String.IsNullOrEmpty(s)) return;
    
    s.ToCharArray().ToList().ForEach(i => {
      Char c = Char.IsLower(i) ? Char.ToUpper(i, CultureInfo.InvariantCulture) : i;
      sb.Append(Char.IsLower(i) ? Char.ToLower((Char)ht[c], CultureInfo.InvariantCulture) : ht[c]);
    });
    
    Console.WriteLine(sb.ToString());
  }
}
0
2 / 2 / 0
Регистрация: 08.01.2016
Сообщений: 42
04.02.2016, 17:50  [ТС]
А можно это в отдельный метод вынести, который строку возвращает пжста
0
Покинул форум
3700 / 1483 / 355
Регистрация: 07.05.2015
Сообщений: 2,903
04.02.2016, 18:11
Vova25super, можно.
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
static String Translate(String inp) {
  if (String.IsNullOrEmpty(inp)) return String.Empty;
  
  Int32 n = 0;
  StringBuilder sb = new StringBuilder();
  Hashtable ht = new Hashtable();
  Char[] ru = "ФИСВУАПРШОЛДЬТЩЗЙКЫЕГМЦЧНЯ".ToCharArray();
  
  Enumerable
      .Range(65, 26)
      .Select(i => (Char)i)
      .ToList()
      .ForEach(i => {
        ht.Add(i, ru[n]);
        n++;
  });
  ht.Add('<', 'Б'); ht.Add(',', 'б');
  ht.Add(':', 'Ж'); ht.Add(';', 'ж');
  ht.Add('"', 'Э'); ht.Add('\'', 'э');
  ht.Add('>', 'Ю'); ht.Add('.', 'ю');
  
  inp.ToCharArray().ToList().ForEach(i => {
    Char c = Char.IsLower(i) ? Char.ToUpper(i, CultureInfo.InvariantCulture) : i;
    sb.Append(Char.IsLower(i) ? Char.ToLower((Char)ht[c], CultureInfo.CurrentCulture) : ht[c]);
  });
  
  return sb.ToString();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.02.2016, 18:11
Помогаю со студенческими работами здесь

Нужно в выводить на экран значения nFlags при нажатии клавиши(Скэн-код, Расширенная клавиша и т. д.)
К тому, что сейчас выводиться нужно добавить на экран значения nFlags при нажатии клавиши(Скэн-код, Расширенная клавиша и т. д.), как...

Есть ли разница между программным посылом клавиши PostMessage и посылом клавиши при нажатии клавиатуры?
Всем привет) Может ерунду говорю, но.. Есть ли разница между программным посылом клавиши postmessage и посылом клавиши при нажатие...

Делфи, при нажатии клавиши выводилось его имя ВывестиСообшение('Имя клавиши');
Точна такую тему нада сделать для других клавишь, но как ? procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char); begin ...

Составить программу,которая при нажатии,клавиши "д" рисует солнце,при нажатии клавиши "н" рисует луну
Помогите пожалуйста сделать

Горячие клавиши в русской раскладке
В англ раскладке, горячие клавиши отрабатывают, а с русской не хотят. Чтобы что-то скопировать например, надо переключить раскладку. Это...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

Новые блоги и статьи
Логирование в C# ASP.NET Core с помощью Serilog, ElasticSearch, Kibana
stackOverflow 25.04.2025
Помните те времена, когда для анализа проблемы приходилось подключаться к серверу, искать нужный лог-файл среди десятков других и вручную фильтровать тысячи строк в поисках ошибки? К счастью, эти дни. . .
Полностью асинхронный счётчик на логике (сумматорах) трёх состояний и асинхронных регистрах трёх состояний. Структура "электронный Buttom Up"
Hrethgir 25.04.2025
Программа для симуляции схемы - Logisim Evolution В общем какое-то время отвлёкся, так было надо, теперь когда запилю это на verilog и FPGA , досоставлю заявку в ФИПС на полезную модель - не готов. . .
Автоматизация Amazon Web Services (AWS) с Boto3 в Python
py-thonny 25.04.2025
Облачные вычисления стали неотъемлемой частью современной ИТ-инфраструктуры, а Amazon Web Services (AWS) занимает лидирующие позиции среди провайдеров облачных услуг. Управление многочисленными. . .
Apache Kafka vs RabbitMQ в микросервисной архитектуре
ArchitectMsa 25.04.2025
Современная разработка ПО всё чаще склоняется к микросервисной архитектуре — подходу, при котором приложение разбивается на множество небольших, автономных сервисов. В этой распределённой среде. . .
Параллельное программирование с OpenMP в C++
NullReferenced 24.04.2025
Параллельное программирование — подход к созданию программ, когда одна задача разбивается на несколько подзадач, которые могут выполняться одновременно. Оно стало необходимым навыком для. . .
Цепочки методов в C# с Fluent API
UnmanagedCoder 24.04.2025
Современное программирование — это не только решение функциональных задач, но и создание кода, который удобно поддерживать, расширять и читать. Цепочки методов и Fluent-синтаксис в C# стали мощным. . .
Мульти-тенантные БД с PostgreSQL Row Security
Codd 23.04.2025
Современные облачные сервисы и бизнес-приложения всё чаще обслуживают множество клиентов в рамках единой программной инфраструктуры. Эта архитектурная модель, известная как мульти-тенантность, стала. . .
Реализация конвейеров машинного обучения с Python и Scikit-learn
AI_Generated 23.04.2025
Мир данных вокруг нас растёт с каждым днём, и умение эффективно обрабатывать информацию стало необходимым навыком. Специалисты по машинному обучению ежедневно сталкиваются с задачами предобработки. . .
Контроллеры Kubernetes Ingress: Сравнительный анализ
Mr. Docker 23.04.2025
В Kubernetes управление входящим трафиком представляет собой одну из ключевых задач при построении масштабируемых и отказоустойчивых приложений. Ingress — это API-объект, который служит вратами. . .
Оптимизация кода Python с Cython и Numba
py-thonny 23.04.2025
Python прочно обосновался в топе языков программирования благодаря своей простоте и гибкости. Разработчики любят его за читабельность кода и богатую экосистему библиотек. Но у этой медали есть и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru