34.键盘1 C#例子 WPF例子

devtools/2025/1/8 2:23:02/

这是一个键盘,按下哪个键,哪个键就会变灰色

简单来说就是按键输入事件,根据不同输入跳转到不同的按钮,然后公用一个按钮事件。

使其变成灰色

C#代码:

using System.Printing;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Input;
using System.Windows.Media;namespace practice
{public partial class MainWindow : Window{public MainWindow(){InitializeComponent();}private void Button_Click(object sender, RoutedEventArgs e){// 这里是按钮点击时要执行的逻辑Button temp = (Button)sender;// 创建一个新的SolidColorBrush对象,设置为你想要的颜色SolidColorBrush newBackground = new SolidColorBrush(Colors.Gray);temp.Background = newBackground;}private void Window_KeyDown(object sender, KeyEventArgs e){switch (e.Key){case Key.W:// 处理 W 键Button_Click(buttonW, null);break;case Key.A:// 处理 A 键Button_Click(buttonA, null);break;case Key.S:// 处理 S 键Button_Click(buttonS, null);break;case Key.D:// 处理 D 键Button_Click(buttonD, null);break;// ... 为其他键添加 casedefault:// 处理未知或未指定的键break;}}}}

XAML代码:

<Window x:Class="practice.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.microsoft.com/expression/blend/2008"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"xmlns:local="clr-namespace:practice"mc:Ignorable="d"Title="MainWindow" Height="350" Width="525"KeyDown="Window_KeyDown"><Grid><Grid.ColumnDefinitions><ColumnDefinition Width="1*"/><ColumnDefinition Width="1*"/><ColumnDefinition Width="1*"/></Grid.ColumnDefinitions><Grid.RowDefinitions><RowDefinition Height="*"/><RowDefinition Height="*"/></Grid.RowDefinitions><Button x:Name="buttonW" FontSize="72" Content="W" Grid.Row="0" Grid.Column="1" Foreground="White"  Background="LightGreen" /><Button x:Name="buttonA" FontSize="72" Content="A" Grid.Row="1" Grid.Column="0" Foreground="White"  Background="LightGreen"/><Button x:Name="buttonS" FontSize="72" Content="S" Grid.Row="1" Grid.Column="1" Foreground="White"  Background="LightGreen"/><Button x:Name="buttonD" FontSize="72" Content="D" Grid.Row="1" Grid.Column="2" Foreground="White"  Background="LightGreen"/></Grid>
</Window>


http://www.ppmy.cn/devtools/147852.html

相关文章

Word2Vec解读

Word2Vec: 一种词向量的训练方法 简单地讲&#xff0c;Word2Vec是建模了一个单词预测的任务&#xff0c;通过这个任务来学习词向量。假设有这样一句话Pineapples are spiked and yellow&#xff0c;现在假设spiked这个单词被删掉了&#xff0c;现在要预测这个位置原本的单词是…

【文献精读笔记】Explainability for Large Language Models: A Survey (大语言模型的可解释性综述)(二)

****非斜体正文为原文献内容&#xff08;也包含笔者的补充&#xff09;&#xff0c;灰色块中是对文章细节的进一步详细解释&#xff01; 3.1.2 基于注意力的解释&#xff08;Attention-Based Explanation&#xff09; 注意力机制可以揭示输入数据中各个部分之间的关系&#…

【每日学点鸿蒙知识】渐变效果、Web组件注册对象报错、深拷贝list、loadContent数据共享、半屏弹窗

1、HarmonyOS 有没有类似于渐变效果&#xff1f; 实现渐变的方式请参考以下代码&#xff1a; Entry Component struct Page240126155113078 {State message: string Hello World;build() {Row() {Column() {Row() {Text(this.message).fontSize(50).fontWeight(FontWeight.B…

MyBatis中动态SQL执行原理

MyBatis 的动态 SQL 机制是通过在 SQL 语句中灵活地插入条件、拼接部分 SQL 或选择不同的 SQL 语句来实现的。MyBatis 提供了 <if>, <choose>, <when>, <otherwise>, <where>, <trim>, <foreach> 等标签&#xff0c;来支持动态生成 …

css 类名

CSS 类名 CSS 类名是一种用于标识和选择特定样式规则的命名约定。用于样式化页面。通过为 HTML 元素添加类名&#xff0c;您可以将特定的 CSS 样式应用于这些元素&#xff0c;实现页面样式与结构的分离和重用。 在编写 CSS 时&#xff0c;您可以通过类选择器&#xff08;类名…

解锁大数据治理:从概念到实战应用深度剖析

解锁大数据治理&#xff1a;从概念到实战应用深度剖析 大数据治理初印象&#xff1a;绝非单纯的数据管理 在当今这个数字化浪潮如汹涌洪水般澎湃而来的时代&#xff0c;数据就好似企业的“新石油”一般&#xff0c;持续不断地发挥着巨大作用&#xff0c;推动着企业的创新以及…

PyTorch快速入门教程【小土堆】之土说卷积操作

视频地址土堆说卷积操作&#xff08;可选看&#xff09;_哔哩哔哩_bilibili 跟神经网路相关的工具都放在torch.nn模块里面torch.nn — PyTorch 2.5 documentation nn.Conv1d在由几个输入平面组成的输入信号上应用一维卷积。nn.Conv2d在由几个输入平面组成的输入信号上应用二维…

Spring 框架——@Async 注解

目录 1.同步调用与异步调用 1.1.同步调用1.2.异步调用1.3.总结 2.注解 Async 介绍 2.1.用在方法上2.2.用在类上 3.使用演示 3.1.在启动类或者配置类上增加 EnableAsync 注解3.2.在异步方法上增加 Async 注解3.3.调用异步方法3.4.测试3.5.其它说明 4.注意事项 4.1.Async 注解失…