Тёмный

Уроки C# - Нажатие клавиш в программе, событие на нажимаемые кнопки, KeyDown, KeyPreview - C# 

XpucT
Подписаться 94 тыс.
Просмотров 56 тыс.
50% 1

Донаты и на кофе ➜ t.me/win10tweaker/171
Эксклюзив для спонсоров ➜ / xpuct
Если недоступна спонсорка ➜
Форум по C#:
win10tweaker.ru/forum/forum/%...
Основной канал:
/ jailbreakvideo
#СобытиеНажатие #НажатиеКнопки #KeyDown #KeyPreview #MatchCollection #СиSharp #СиШарп

Наука

Опубликовано:

 

28 апр 2019

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 144   
@Andymit
@Andymit 5 лет назад
видео без прыжка кота не видео)
@ivanuchka007dunduk3
@ivanuchka007dunduk3 3 года назад
Пол часа возился, думал, что не так, вроде должно работать, а оказывается забыл keypreview) Спасибо
@user-hu8ng6us3u
@user-hu8ng6us3u 4 года назад
Отличные уроки! Доходчиво, а самое главное просто и практично.
@user-gh2sj8vi2d
@user-gh2sj8vi2d 5 лет назад
Спасибо за урок! Было бы очень круто увидеть уроки на тему WinApi и Хуков. В интернете в понятном доступе напрочь отсутствует эта информация. Приходится качать какие то готовые решения и приспосабливать, не очень понимая как они работают. Часто нужно сделать, чтобы программа висела в трейе и считывала горячие клавиши или клики мышкой при условии нажатых горячих клавиш. И чтобы клик перехватывался в программу, а не кликал в винде. Если на примете есть какой-то хороший источник таких знаний, буду очень благодарен.
@user-jx8th9xo9w
@user-jx8th9xo9w 4 года назад
Спасибо большое, долго разбиралась, но хватило минуты с твоего видео!
@IP_SSI17
@IP_SSI17 4 года назад
Спасибо огромное, подписка и лайк. Всё грамотно, понятно и качественно!
@user55132
@user55132 2 года назад
Уважаю, помог, просто и ясно! Спасибо!!!!!
@wizardsmoke6699
@wizardsmoke6699 4 года назад
Спасибо, очень помог)
@user-AristotelLeonov
@user-AristotelLeonov 2 года назад
Мужик, спасибо тебе!!! Оно работает!!!
@goquokkahan
@goquokkahan Год назад
не понимала, что не так в коде, очень выручили этим уроком, спасибо вам большое!!!!
@XpucT
@XpucT Год назад
@redtayron6390
@redtayron6390 5 лет назад
Кот чувствует когда Хачатур начинает записывать видео)
@Kukusik007
@Kukusik007 Год назад
Коротко и ясно, спасибо! Мне нужна была также однократная реакция на нажатие кнопки. Это нашел сам по запросу «Событие на однократное нажатие клавиши», там с флагом, тоже несложно.
@user-xg6cu3mn5p
@user-xg6cu3mn5p 3 года назад
Спасибо огромное!!!!!!!
@lidni
@lidni 2 года назад
Спасибо! Очень помог
@unde3863
@unde3863 5 лет назад
В следующий раз, кот будет не прыгать а залезать медленно)))
@unde3863
@unde3863 5 лет назад
www.upload.ee/files/9900270/test.cmd.html Не понимаю вроде написал всё правильно...
@user-zf7le3yd3d
@user-zf7le3yd3d 4 года назад
Зачетный котяра, походу полез на шкаф - кодить!
@user-vf8fg6xl3g
@user-vf8fg6xl3g 2 года назад
Спасибо! Теперь я наконец то могу сделать кликер-пианино...
@86werth
@86werth 4 года назад
Спасибо
@mw-px9ts
@mw-px9ts 3 года назад
Целый день бился над задачей. Вроде все правильно, но не работает. И вот буквально на первой минуте просмотра узнаю, что проблема в KeyPreview. ))))) Все сразу заработало. Спасибо!
@user-mr4bm9xv2x
@user-mr4bm9xv2x 3 года назад
Жиза понимаю😂😂😂😂
@rapiraOYP
@rapiraOYP 3 года назад
Помог, спасибо
@denharius5117
@denharius5117 4 года назад
Сделай видос как делать графические оболочки к программам, и вообще про компилирование exe-для чайников
@chatdrom5643
@chatdrom5643 5 лет назад
То самое чувство, когда не интересно программирование, а его дублер. Но вы сами знаете кто!
@chezbargo
@chezbargo Год назад
У меня не работало все только из-за KeyPreview.... Спасибо большое за помощь!!!
@RebellonRM
@RebellonRM 2 года назад
Именно поэтому я постелил на кресло старый плед.
@marchel7777777
@marchel7777777 Год назад
Хороший Котик🤣
@XpucT
@XpucT Год назад
@awfsdgsgeefdgwef
@awfsdgsgeefdgwef 5 лет назад
Можешь сделать про DragAndDrop? Там что-то сложное :)
@user-nr4jf9rt4h
@user-nr4jf9rt4h 5 лет назад
В данном примере я бы так сделал. AcceptButton = button1;
@vladgu5037
@vladgu5037 2 года назад
бро ты крутой, за котика лайк (:
@XpucT
@XpucT 2 года назад
@user55132
@user55132 2 года назад
Подпишусь
@user-nc1ry5ss3z
@user-nc1ry5ss3z 3 года назад
Сделай пж ролик где ты рассказываешь "какой код надо написать чтобы спрайт (объект) реагировал на нажатие"
@rKvinty
@rKvinty 3 года назад
Спасибо, теперь на 1 проблему меньше
@PravdaGe
@PravdaGe 3 года назад
Доброго времени суток! Подскажи пожалуйста как реализовать перемещение Курсора в заданную координатору X Y и совершить клик ? не найду нормальный пример код просмотра конкордат у меня уже есть : private void label1_MouseMove(object sender, MouseEventArgs e) { int CursorX = Cursor.Position.X; int CursorY = Cursor.Position.Y; this.Text = CursorX.ToString() + " " + CursorY.ToString(); label1.Text = CursorX.ToString() + " " + CursorY.ToString(); }
@TWITexe
@TWITexe 3 года назад
Киньте ссылку видео с пробитием по IP
@mus_catta
@mus_catta 2 месяца назад
Здравствуйте! Подскажите пожалуйста, как решить задачу. Необходимо посчитать все нажатия по области формы, которая содержит tabControl, radioButton,button,comxoBox и т.д. Проблема в том, что внутри tabControla счетчик не работает, хоть он и располагается на форме. Вручную цеплять к каждому элементу бы тоже не хотелось,т.к. их очень много. Подскажите, как быть?
@user-si6ww3gi2l
@user-si6ww3gi2l 3 года назад
нашёл как обработать сочетание клавиш КОД void Form_KeyDown(object o, KeyEventArgs e) { // Ctrl + X if (e.Control && e.KeyCode == Keys.X) { // Выполнить нужное действие, например, открыть форму } }
@imafamiliya9336
@imafamiliya9336 3 года назад
Как сделать, чтобы по нажатию на кнопку одновременно с Ctrl и одновременно с Shift выполнялись разные действия. Спасибо.
@RusGameDraft
@RusGameDraft 2 года назад
Доброго времени суток, есть вопрос, если к примеру у меня есть переменная целочисленная которая передается в метод, в котором она сравнивается с другим целочисленным числом (например если она больше 10) и затем, необходимо сделать так, чтобы создалось нажатие клавиши какой-то определенной(то есть все равно что зажать клавишу на клавиатуре), а затем если значение этой переменной становится меньше 10, то и зажатие клавиши соответственно тоже должно прекратиться, как можно такое реализовать? хотя бы что почитать или какие методы для этого можно использовать.
@XpucT
@XpucT 2 года назад
Добрый день 🖐 По сути в Вашем вопросе уже заключён ответ, так как всё держится как раз на условиях if. Проверяете одно и другое. Если будет сложность, пишите на форуме в этом разделе: win10tweaker.ru/forum/forum/с Мы поможем 👍
@protokol_223
@protokol_223 2 года назад
спасибо огромное! кресло жалко(
@XpucT
@XpucT 2 года назад
@pas9857
@pas9857 Год назад
Как отлавливать нажатия клавиш вне своей формы, например, когда форма сложена в трей? Я хочу отслеживать нажатие клавиш и эмулировать новые нажатия через приложение. Примерно так работает пунто свитчер. Как работать при форме в фокусе - понятно. А что делать, если форма не в фокусе?
@dobrynanikitich7034
@dobrynanikitich7034 3 года назад
А как из халло ворд передать управление на кнопку на клаве? Чтобы ждала нажатие. А по нажатию программа пошла дальше. Как управлять с кнопки я разобрался, а вот как на неё передать управление пока не знаю. Правда, мне для С++, точнее блупринт бы для анриала. Но готовых примеров не нашёл. Теперь ищу по С++.
@zirexplay
@zirexplay 3 года назад
Спасибо за урок, но у меня вопрос как сделать задержку между следующим нажатием клавиши G? Так как я хочу чтобы люди в моей программе не злоупотребляли событиями привязаными к данной клавише.
@XpucT
@XpucT 3 года назад
Я это решил накручиваением переменной. Как нажал press++ и следом проверка, если press = 30, то... Это примерно 2 секунды.
@zirexplay
@zirexplay 3 года назад
@@XpucT спасибо :)
@user-lt6vj1xh4m
@user-lt6vj1xh4m 5 лет назад
Здравствуйте, делаю программу в помощь учителю. Необходимо, что бы при запуске программы отключалась клавиатура, ну или хотя бы горячие клавиши, вроде: Alt + Tab, Ctrl + Win + {стрелка}, Ctrl + Alt + Delete и т.д. В интернете нашел только через WinAPI, но хотелось бы что-нибудь попроще.
@imafamiliya9336
@imafamiliya9336 3 года назад
Хорошо бы урок не по обработке или вызове нажатия, а по имитации нажатия клавиш. Т. е. вызвать внешнюю программу (например notepad.exe) и в ней ввести текст с пробелами не пользуясь клавишами (c секундными паузами). Спасибо.
@XpucT
@XpucT 3 года назад
[DllImport("user32.dll", EntryPoint = "FindWindowEx")] public static extern IntPtr FindWindowEx(IntPtr hwndParent, IntPtr hwndChildAfter, string lpszClass, string lpszWindow); [DllImport("User32.dll")] public static extern int SendMessage(IntPtr hWnd, int uMsg, int wParam, string lParam); public void Notepad(string line) { var notepad = Process.Start("notepad.exe"); notepad.WaitForInputIdle(); SendMessage(FindWindowEx(notepad.MainWindowHandle, new IntPtr(0), "Edit", null), 0x000C, 0, line); } // Готовченко 👏
@nil3x567
@nil3x567 4 года назад
нужна помосчь как зделать чтоб прога захватывала нажатие допустим из игры или другои програмы
@maxbars1996
@maxbars1996 4 года назад
по клавише Delete почему-то работает только если выключен NumLock.
@SnowflakeCat1225
@SnowflakeCat1225 Год назад
Доброго времени суток! Урок полезный, недавно мне помог. Однако у меня возникла необходимость сделать так, чтобы форма считывала нажатия, когда находится в свёрнутом состоянии, либо в неактивном состоянии. Такое вообще возможно сделать?
@XpucT
@XpucT Год назад
Легко через WinAPI. На канале есть про это видео. ru-vid.com/group/PL05SB3rBbUsraqiEUeS70RKhVAu97nGeb
@amdm1430
@amdm1430 5 лет назад
Хачатур, можно ли через if (e.KeyValue == (char)Keys.D0) { button_0.PerformClick(); } сделать комбинацию клавиш? То есть нужно, чтобы при нажатии shift + (кнопка, где плюс и равно на одной кнопки) выводился "+" вызвался метод вывода плюса. Пробовал так: void Form1_KeyDown(object sender, KeyEventArgs e) { if (e.KeyValue == (char)Keys.Oemplus) { button_plus.PerformClick(); } } Но тогда с шифтом не взаимодействует, и не получится метод клавиши "=" вызвать. Как можно реализовать комбинацию "shift" + "=" = "+"?
@XpucT
@XpucT 5 лет назад
if (e.Shift && e.KeyData == Keys.Oemplus) { // Должно работать, но не работает. } Отдельно пашет Другие комбинации пашут Конкретно Shift + = не хочет
@XpucT
@XpucT 5 лет назад
Нашёл альтернативное решение. Но не проверял: stackoverflow.com/questions/37881046/how-to-detect-if-multiple-keys-are-pressed-in-c-sharp-forms/37884277#37884277
@amdm1430
@amdm1430 5 лет назад
@@XpucT никак не могу разобраться. Ситуация такова: есть интерфейс с контролами, и надо, чтобы комбинация клавиш вызывала конкретный контрол. К примеру: if (e.Shift && e.KeyData == Keys.D8) //D8 - ведь 8 на клавиатуре? { button_umn.PerformClick(); } Вот надо, чтобы при нажатии шифта + 8 вызвался метод умножить, а вернее нажался контрол умножить, а от него уже метод Ничего не выходит, он даже не улавливает нажатие шифта (в дебаге смотрел). Проблема также в том, что на клавишу 8 назначено также событие: switch (e.KeyValue) { case (char)Keys.D8: button_8.PerformClick(); break; } Вобщем, каша. P.S. С помощью твоего примера никаких комбинаций так и не смог построить, можешь скинуть коды, как ты проверял?
@alexeygudan
@alexeygudan 4 года назад
Немного поздно(так, совсем чуть-чуть), но я столкнулся с этой же проблемой и вот мое решение: if (e.Shift) KeyDown += (s, a) => { if (a.KeyValue == (int)Keys.D8) buttonMultiply.PerformClick(); }; Не знаю, на сколько это нормально, но мой мозг на большее не додумался) UPD: Додумался ещё лучше сделать Что бы не проверять нажатия шифта, нужно проверять является ли нажатая клавиша нужным символом. В данном случае if (e.KeyChar.ToString() == "*") buttonMultiply.PerformClick(); Замечу, что события должно быть KeyPress, при KeyDown/KeyUp нет KeyChar(или есть и я просто не нашел)
@user-yx2wx7we5n
@user-yx2wx7we5n 5 лет назад
​ XpucT привет знакомый идею подкинул интересную : есть мультимедийные клавиши на клаве плей стоп наз вперед и когда сидишь в вк или еще где то фильмец слушаешь эти клавиши работают нооо когда сидишь в другой программе или кодишь или играешь хочешь переключить трек или вернуть его то эти кнопки не пашут. Суть как сделать софтину чтобы перехватывала эти кнопки и отправляла в тот же хром команды клавишь. как такое можли реализовать?
@XpucT
@XpucT 5 лет назад
Я давно перестал писать подобного рода фокусы. Взял X-738-K. Все настройки прошиваются в мышь. А вообще можно, конечно, такое сделать.
@ianm8107
@ianm8107 4 года назад
привет Хачатур, я не знаю обновление это или нет, но теперь в VS у меня много чего выделяется синим, красным, даже черным. что думаешь об этом? я бы лично убрал это все и поставил как было раньше, но не знаю как...
@XpucT
@XpucT 4 года назад
Привет 🖐 А для чего первый урок? Нужно делать точку сохранения на виртуалке и в таких случаях откатываться.
@ianm8107
@ianm8107 4 года назад
@@XpucT da, как только я запустил форму все встало на свои места)не знаю что это было
@XpucT
@XpucT 4 года назад
@@ianm8107 магия наречия Хачатура =)
@glorglorsky7987
@glorglorsky7987 4 года назад
привет, а если много кнопок button, то как к каждому button привязать обработку нажатия на enter?
@XpucT
@XpucT 4 года назад
Привет 🖐 Если речь о кнопке по умолчанию по Enter, то она может быть только одна. Типа действие по умолчанию.
@glorglorsky7987
@glorglorsky7987 4 года назад
​@@XpucT спасибо. Тогда вопрос, есть много textbox, и один label, как по нажатию enter выводить данные в label из каждого textbox. т.е курсор в первом textBox, набрал 123, нажал enter, данные попали в label, курсор во втором textBox, набрал sdfsdf, нажал enter, данные попали в label, Надо узнать тогда, в каком TextBox стоит курсор. т.е Я сначала подписываюсь на все textBox textBox1.KeyDown += new System.Windows.Forms.KeyEventHandler(Enter_Click); textBox2.KeyDown += new System.Windows.Forms.KeyEventHandler(Enter_Click); textBox3.KeyDown += new System.Windows.Forms.KeyEventHandler(Enter_Click); обработчик для всех textBox private void Enter_Click(object sender, KeyEventArgs e) { //if (e.KeyValue == (char)Keys.Enter) //{ // label1.Text = textBox2.Text; //} foreach (TextBox tb in Controls.OfType()) { tb.KeyDown += (s, new_e) => { label1.Text = tb.Text; }; } } но не получается)
@XpucT
@XpucT 4 года назад
@@glorglorsky7987 в загрузке формы можно добавить: AcceptButton = button1; Либо просто в свойствах формы заранее установить AcceptButton на button1. i.imgur.com/OxLpOGf.png
@glorglorsky7987
@glorglorsky7987 4 года назад
textBox1.KeyDown += (s, e) => { if (e.KeyValue == (char)Keys.Enter) label1.Text = textBox1.Text; }; textBox2.KeyDown += (s, e) => { if (e.KeyValue == (char)Keys.Enter) label1.Text = textBox2.Text; }; textBox3.KeyDown += (s, e) => { if (e.KeyValue == (char)Keys.Enter) label1.Text = textBox3.Text; }; получилось, а еще есть способы, как я пытался выше?)
@XpucT
@XpucT 4 года назад
@@glorglorsky7987 Я же написал вариант: AcceptButton = button1; В данном случае свой велосипед придумывать не стоит, если есть свойство AcceptButton.
@PravdaGe
@PravdaGe 3 года назад
Доброго времени суток по поводу нажатия клавиш есть вопрос о SendKeys Мне нужна имитация нажатых клавиш при запуске программы: комбинация клавиш CTRL+SHIFT+P далее ждем и комбинация клавиш CTRL+E вот код: SendKeys.Send("^+P"); System.Threading.Thread.Sleep(3000); SendKeys.Send("^E"); Нажатие есть но не работает покажите пожалуйста как правильно
@XpucT
@XpucT 3 года назад
Добрый вечер. Команда работает. Другой вопрос, кто должен "услышать" эту команду. Чтобы проверить работоспособность SendKeys сделайте следующее: 1. Создайте ярлык на рабочем столе на запуск любой программы 2. Добавьте в свойства ярлыка Быстрый вызов: Ctrl + Shift + W 3. Поверьте событие SendKeys.Send("^+{W}"); на кнопку или загрузку приложения. Работать не будет. Однако, если Вы запустите Notepad++, который принимает такие горячие клавиши, то ему сможете послать эту команду и он "услышит" её. Не нужно забывать, что клавиши, которые нажимает пользователь и имитация - это разные вещи. Функция создавалась не для того, чтобы любой смог любому сломать винду, поэтому на событии висит безопасность. Вам стоит подойти к решению задачи по-иному.
@PravdaGe
@PravdaGe 3 года назад
@@XpucT Добрый вечер. не кто не кто собирается сломать винду с этим прекрасно справляются Майкрософт Разработчики !!! )) Такой вопрос вот например мы делаем кнопку SendKeys.Send("^+{W}"); но запустив форму у нас же может быть и Включи на Русская раскладка Клавиатуры может вы знаете как слетать проверку раскладки при запуске форму и если Установлено РУС Меняем на ENG Спасибо !
@user-ht7hf8yn1b
@user-ht7hf8yn1b 3 года назад
А как проверить нажатие клавиши 1 или 3 например?
@XpucT
@XpucT 3 года назад
if (e.KeyValue == (char)Keys.D1) if (e.KeyValue == (char)Keys.D3)
@7453060
@7453060 3 года назад
Думаю, людей надо сразу на mvvm тренить иначе потом у них суп в голове. К тому-же на wpf это как-то нагляднее.
@XpucT
@XpucT 3 года назад
Увы, на MVVM новичок точно с ума сойдёт, ибо нужно правильно объяснить концепцию. Я вот всё сам подрываюсь начать учить, но никак. Не в том смысле, что не понимаю =)) Я-то как раз всю прелесть уже понимаю, но вот правильно и последовательно это на нормальных примерах, как с формами... Боюсь сделать ошибку, которую допускают абсолютно все. Поэтому пока не берусь ни за сценарий, ни за запись. Хочу всё продумать, чтобы точно никого не спугнуть, а реально научить, как в этом курсе.
@alexpain4841
@alexpain4841 3 года назад
Не хотел спрашивать, хотел найти. Но, пишу хоткеи для калькулятора, и как у Вас и как у всех пробую, у меня клавиши работают только когда в фокусе, если 1 в фокусе, работает только NumPad1 все остольные не работают, соответственно когда 2 в фокусе, пишет только 2-ку в строке... что делать, когда есть куча кнопок и они не работают без фокуса?
@XpucT
@XpucT 3 года назад
Во-первых: обязательно нужно выставить KeyPreview, как показано в видео в свойствах формы. Создать событие формы, в котором, например.... void Form1_KeyDown(object sender, KeyEventArgs e) { // Разделить if (e.KeyValue == (char)Keys.Divide) { } }
@IntegralF
@IntegralF 3 года назад
как сделать то же только на с++?
@1718haqqx
@1718haqqx Год назад
А как добавить,чтобы зажимать несколько клавиш и происходило действие?
@XpucT
@XpucT Год назад
Условие & условие
@pvprew8794
@pvprew8794 2 года назад
Ребята, помогите что делать, у меня какая-то фигня случилась с клавиатурой, если я нажимаю crtl то у мені ищезает звук и спамиться XX, если нажимаю пуск то компьютер просто выключается, если нажимаешь на alt то компьютер уходит в спящий режим, если нажимаю на кнопку удаление текста, то ничего не удаляеться и спамиться 00000x00xx, и еще несколько кнопок делают что-то не то. Как это исправить помогите, пожалуйста
@golkin
@golkin 10 месяцев назад
А как сделать нажатие на точку?
@86werth
@86werth 4 года назад
Скажите пожалуйста, у меня есть код который сохраняет информацию как Сохранить как. А как сделать чтобы сохранял таким образом, чтобы пользователь один раз выбрал путь куда ему нужно сохранить, а затем сохранял без диалогового окна. private void SaveDocument() { SaveFileDialog sfd = new SaveFileDialog(); sfd.Filter = "Текстовые документы|*.txt"; sfd.FileName = "Безымянный"; sfd.InitialDirectory = "C:\\"; if(sfd.ShowDialog() == DialogResult.OK) File.WriteAllText(sfd.FileName,richTextBox1.Text); }
@XpucT
@XpucT 4 года назад
Держи: string customPath = Path.GetPathRoot(Environment.SystemDirectory); private void SaveDocument() { if (!File.Exists(customPath)) { SaveFileDialog sfd = new SaveFileDialog(); sfd.Filter = "Текстовые документы|*.txt"; sfd.FileName = "Безымянный"; sfd.InitialDirectory = customPath; if (sfd.ShowDialog() == DialogResult.OK) File.WriteAllText(sfd.FileName, richTextBox1.Text); customPath = sfd.FileName; } else File.WriteAllText(customPath, richTextBox1.Text); }
@86werth
@86werth 4 года назад
Спасибо большое
@jamade3687
@jamade3687 4 года назад
1:50 - а почему у меня нет клавиши F24 : )
@sergmosk308
@sergmosk308 3 года назад
Shift + F12 = F24
@Scr1pted
@Scr1pted 2 года назад
Хачатур, как сделать так если у меня окно скрыто то клавиши работают потому что если я окно скрою то клавиши не работают
@XpucT
@XpucT 2 года назад
Потому что это событие на нажатие кнопок в самой форме. Тут не стоит путать глобальные клавиши. ru.stackoverflow.com/questions/784909/c-Активация-по-нажатию-клавиши-на-клавиатуре-при-свернутой-форме
@Scr1pted
@Scr1pted 2 года назад
@@XpucT А есть какой нибудь короткий скрипт чтобы было в глобальном
@XpucT
@XpucT 2 года назад
​@@Scr1pted так это и есть короткий вариант =)) Ты просто пойми, что одно дело управление формой, другое - управление глобально Windows.
@Scr1pted
@Scr1pted 2 года назад
@@XpucT Постараюсь, я просто новичок и мало что понял можешь сделать тутор пж
@kabukijoe99
@kabukijoe99 4 года назад
Привет, помогите пожалуйста с пониманием кода. Есть вставленная программным способом радиокнопка, и я записал в нее текст. но никак не могу разделить его на 2 строки (radioButton5.Text= "radioButton5"+" "+"это я" или radioButton5.Text= "radioButton5"+Environment.NewLine+"это я" - не работает). (скрин) prnt.sc/rkz7ki СПАСИБО
@XpucT
@XpucT 4 года назад
Привет 🖐 radioButton5.Text = "Первая строка Вторая строка";
@kabukijoe99
@kabukijoe99 4 года назад
prnt.sc/rle5gw немного не сработало
@XpucT
@XpucT 4 года назад
@@kabukijoe99то ли студия старая, то ли C#. то ли .NET Framework. Я специально проверил. Мой вариант работает 100%.
@kabukijoe99
@kabukijoe99 4 года назад
​@@XpucT radiobutton6.AutoSize=true - это помогло. Все равно спасибо
@vendorgames
@vendorgames 5 лет назад
Здравствуйте, может кто из комментаторов поможет. Есть число допустим - 100.000 мне надо разбить его на энное количество частей с условием что это части будут рандомными числами с диапазоном от 2500 до 3500 (но чтоб в итоге при их сложении получилось 100.000) Пример Число 9000 Диапазон числ от 2500 до 3500 Результат: 2768 3421 2811 Может кто встречал уже где-то готовый вариант такого калькулятора? или кто-то захочет написать такой калькулятор! Заранее спасибо
@XpucT
@XpucT 5 лет назад
Random random = new Random(); int dice1 = random.Next(2500, 3500); int dice2 = random.Next(2500, 3500); int dice3 = 9000 - (dice1 + dice2); // Профит 👍
@Slonick
@Slonick 5 лет назад
private IEnumerable Split(int input, int min, int max) { var random = new Random(); var result = new List(); do { var elapsed = input; result.Clear(); do { var next = random.Next(min, max); if (next > elapsed) next = elapsed; elapsed -= next; result.Add(next); } while (elapsed > 0); } while (result.Any(x => x < min || x > max)); return result; }
@daniil-shamraev
@daniil-shamraev 5 лет назад
Здравствуйте, обнаружил такую вещь, что моя программа закрывается при нажатии на любую кнопку, вне зависимости от обработчик событий, как это исправить?
@XpucT
@XpucT 5 лет назад
Где-то Close() осатвили?
@daniil-shamraev
@daniil-shamraev 5 лет назад
@@XpucTнет
@XpucT
@XpucT 5 лет назад
@@daniil-shamraev что показывает Debug?
@user-mn4wl9bb5x
@user-mn4wl9bb5x Год назад
Подскажите как кнопку выхода писать exit()?
@Kukusik007
@Kukusik007 Год назад
В смысле, this.close()?
@TWITexe
@TWITexe 4 года назад
Подскажите, не хочет реагировать ни в какую, прописал всё, как в вашем видео. Вот скрины: imgur.com/a/27Vg0tV
@Silver_men_rev
@Silver_men_rev Год назад
Всем привет, ребятки перелопатил весь инет но решение так и не нашел, подскажите кто может, как реализовать закрытие формы в проекте winforms? проблема следующая когда я выставляю KeyPreview = true, на форме и использую KeyDown(), то пока форма не запущена работает все нормально все закрывается, но как только я ее запустил через кнопку btFind_Click(), с определенным кодом и с Hide(); в этой же кнопке, что бы спрятать окно, то в таком случае KeyDown() не работает. Как сделать так что бы когда выполняется какой то код в этой форме ее можно было бы остановить и показать через сочетание клавиш Control+ Shifh+ Z? Всем откликнувшимся за ранее спасибо.
@XpucT
@XpucT Год назад
Привет 🖐 Если форма невидима, то просто так не будет работать и Я думаю, что это должно быть понятно Вам и логично. Однако, подобный кейс решается с WinAPI. На канале в плейлисте есть это видео. ru-vid.com/group/PL05SB3rBbUsraqiEUeS70RKhVAu97nGeb
@Silver_men_rev
@Silver_men_rev Год назад
​@@XpucT Спасибо за ответ, но я только начинаю по чуть что то делать в своих проектиках, трудно конечно разобраться.Ваши видео посмотрел про API и ни чего не понял))). В ютубе и на просторах интернета ни чего подобного не нашел, или там подобного на виндов формс ни чего такого нету или я не понимаю что мне надо))). Все равно спасибо что ответили, наверное мне еще рановато)))
@Hello_world_2020A
@Hello_world_2020A 4 года назад
КАК сделать события при клике на среднию кнопку мышки (там где скрол)???????
@XpucT
@XpucT 4 года назад
Добавляешь событие MouseDown на нужном контроле и добавляешь в него это: if (e.Button == MouseButtons.Middle) { // Выполнится, если нажатие было колесом }
@Hello_world_2020A
@Hello_world_2020A 4 года назад
@@XpucT щас буду пробовать
@Hello_world_2020A
@Hello_world_2020A 4 года назад
@@XpucT ТАК должно быть namespace WindowsFormsApp15 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Middle) { // Выполнится, если нажатие было колесом } } } }
@Hello_world_2020A
@Hello_world_2020A 4 года назад
@@XpucT УРА сработало СПАСИБО ТЕБЕ 4 часа искал Я просто делаю аналог программы Circle dock если интересно Проект был заброшен в 2008 году СПАСИБО // очень помог
@Hello_world_2020A
@Hello_world_2020A 4 года назад
@@XpucT А как сделать тоже самое но только на wpf
@areon7777
@areon7777 4 года назад
Помогите пожалуйста, как сделать так, чтобы кнопки работали без фокуса на программу чтобы я в любом месте, даже открывая другую программу, нажимал на кнопку(клавишу клавиатуры) и тогда она работала
@jamade3687
@jamade3687 4 года назад
никак 1:70
@areon7777
@areon7777 4 года назад
@@jamade3687 В смысле никак, а как тогда другие программы работают?
@jamade3687
@jamade3687 4 года назад
​@@areon7777​ладно вот: private void Form1_Load(object sender, EventArgs e) { gkh.HookedKeys.Add(Keys.PrintScreen); gkh.KeyUp += new KeyEventHandler(gkh_KeyUp); } private void Form1_FormClosing(object sender, FormClosingEventArgs e) { gkh.unhook(); } static void gkh_KeyUp(object sender, KeyEventArgs e) { // Делаем то, что необходимо } gkh это объект класса globalKeyboardHook: static globalKeyboardHook gkh = new globalKeyboardHook(); надо уточнить, что клавиша- левая итог: gkh.HookedKeys.Add(Keys.L*****Key); где ***** - там клавиша фух кажется всё
@areon7777
@areon7777 4 года назад
@@jamade3687 Ого, спасибо
@areon7777
@areon7777 4 года назад
@@jamade3687 А как мне его написать, у меня программа написана на VB
@wc3d2
@wc3d2 5 лет назад
1
@deadsoul94
@deadsoul94 3 года назад
А как сделать, чтобы Key отправлялась в неактивное окно.
@XpucT
@XpucT 3 года назад
В неактивное - это какое? Чужое? Тут уже injecting нужно знать. Но урок не об этом.
@deadsoul94
@deadsoul94 3 года назад
@@XpucT К примеру активна игра, и по нажатию на "0" нужно стартануть таймер . А то на данный момент приходится переключаться между окнами.
@XpucT
@XpucT 3 года назад
@@deadsoul94 находил WinAPI, правда урока пока такого не снимал. Возможно, в будущем сниму.
@user-ue4qe9hy9e
@user-ue4qe9hy9e 4 года назад
А как сделать так, чтобы происходило событие когда форма свернута ?
@XpucT
@XpucT 4 года назад
Тут уже не нажатие на форме, а перехват клавиатуры. Делается совсем иначе. Постараюсь рассказать в следующих видео. Но, как правило, обычно просто делают ShowInTaskbar = false; Opacity = 0;
@YNISHAso2
@YNISHAso2 3 года назад
А код можена?
@jekyll3
@jekyll3 4 месяца назад
Кто нибудь предоставьте мне выполненные задания плииззз ) заранее буду благодарен
@KILLZONERUSSIA
@KILLZONERUSSIA Год назад
не работает
@XpucT
@XpucT Год назад
Работает
@KILLZONERUSSIA
@KILLZONERUSSIA Год назад
@@XpucT ладно, работает
@_xome4ok_348
@_xome4ok_348 4 года назад
зачем в уроке по программированию твое лицо и половина комнаты? отвлекаешь и в принципе это не нужно! или хотя бы сделай как можно меньше камеру, а не на пол экрана
Далее
OVOZ
01:00
Просмотров 812 тыс.
🎙️ПЕСНИ ВЖИВУЮ от КВАШЕНОЙ💖
3:23:13
Как выжить на 1000 рублей?
13:01
Просмотров 685 тыс.