专业编程基础技术教程

网站首页 > 基础教程 正文

w08Button,发出你的指令,让程序随心而动

ccvgpt 2024-11-26 00:54:41 基础教程 1 ℃


Button按钮

w08Button,发出你的指令,让程序随心而动

按下汽车启动按钮,汽车发动机应声启动;按下程序界面上的按钮,相应的功能便得以实现。

不管是生产生活中的按钮,还是程序中的按钮,都是我们常用的控制设备,我们用它来发出指令,然后完成相应的功能。

我们知道,工业控制按钮有许多不同的形式和颜色,是为了区分不同的功能和作用,同样,我们也可以给WPF的按钮设置不同的外观,以使程序美观并好用。

另外,我们也知道,电路按钮本质上是一个开关,要让按钮正常发挥作用,必须把它连接在合适的电路中。同样地,要使程序中的按钮发挥作用,也必须给它做一定的处理。

这两点,通过按钮的两个方面来进行,一个就是属性,另一个就是事件。

用属性设置按钮的外观和工作模式

(1)Content :内容,即按钮的显示,可以显示简单的文本,也可以显示图片,还可以同时显示文本和图片等。如果显示简单的文本,直接给他赋值即可:

Content=“打开” 则按钮上显示“打开”二字。

如果要显示图片和文字,就要在标签之间设置内容,并将它们放在布局控件中:

<Button x:Name="ImageButton" Margin="3" HorizontalAlignment="Left">

<StackPanel Margin="1" Orientation="Horizontal" Width="620">

<Image Source="前进.bmp" Stretch="UniformToFill" Width="160"/>

<TextBlock Width="130" />

<TextBlock Text="图片按钮" Margin="1,15,1,1"/>

</StackPanel>

</Button>

注意:在这里我用了一张名为"前进.bmp"的图片,你可以换成你自己的。

(2)Background 背景色,C#代码中可用Brushes.Red等颜色为其赋值,即Background=Brushes.Red,Xaml代码中格式为Background=“Red”

(3)Foreground 前景色,即文字内容的颜色,设置方法同背景色

(4)ToolTip工具提示,鼠标光标进入按钮区域时显示的提示信息

(5)Margin外边距,按钮外边框与父控件边界的距离

(6)Padding内边距,按钮内部元素与按钮边框的距离

(7)ClickMode单击模式,即鼠标激发事件的模式,包括Hover(悬停)、Press(按下)、Release(释放),指的是Click事件激发的时机,Hover光标进入按钮即激发,Press在按钮上按下左键激发,Release按下不激发,左键抬起激发。

(8)IsDefault布尔值,若值为True,则设置该按钮为缺省按钮,按回车键即可执行。

简谈事件和事件处理程序

所谓事件,就是程序运行时发生的有意义的事情。例如,用户把鼠标指针移到了按钮上,就发生了MouseEnter 鼠标光标进入事件,如果用户在按钮上按下了左键,就发生了Click 左键单击事件,如果用户将鼠标指针移出按钮,就发生了MouseLeave鼠标离开事件。

所谓事件处理程序,就是处理事件的一个方法。就像我们接好的电路一样,没有接好的电路,按按钮就不会起作用。最简单的处理程序,就是调用消息框显示一个消息。

所谓事件关联,就是将一定的事件和一定的事件处理程序关联起来,类似于把合适的开关接到合适的电路中。

Xaml中的事件关联代码:Click="ImageButton_Click",其中ImageButton是按钮的名字,Click是事件的名字,ImageButton_Click是事件处理程序的名字。

事件处理代码,假定点击按钮后弹出一个消息框。显示“这是一个消息框”,代码如下:

private void ImageButton_Click(object sender, RoutedEventArgs e)

{

MessageBox.Show("这是一个消息框!", "提醒", MessageBoxButton.OK, MessageBoxImage.Information);

}

其中,事件处理程序的框架

private void ImageButton_Click(object sender, RoutedEventArgs e)

{


}

是在我们双击Click事件时自动生成的,其中的执行代码

MessageBox.Show("这是一个消息框!", "提醒", MessageBoxButton.OK, MessageBoxImage.Information);

是我们自己编程实现的。

好了,按钮就先说到这里,希望你能用起来,让你的程序变得可以操控。

Tags:

最近发表
标签列表