1. 窗体Tab键的顺序设置

选中窗体-视图-tab键顺序

label不适用tab键

2. 热键设置和快捷键设置

热键:无论光标在哪都可以

快捷键:出现界面后才能按

添加label

更改label的Text属性改为:热键关闭&C

当按下Alt+C时,Close按钮获得焦点【本应该是热键关闭(C)这个label获得焦点,但是label不能使得光标停留,因此光标自动跳转到label的下一个控件上】

当按下Alt+G时,相当于直接点击了关闭(G)按钮

3. ComboBox

不让用户输入,修改DropDownStyle为DropDownList

如果想要其显示默认值,则在Form_load里面为其SelectedIndex赋值

4. 选择默认按钮

选中form,在其属性AccpetButton里面选择相应的按钮

四则运算的代码

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; namespace 四则运算器
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void Form1_Resize(object sender, EventArgs e)
{
//目标:点击最大化,窗口大小不变或者使得最大化的按钮失效
//触发的是最大化按钮
if(this.WindowState == FormWindowState.Maximized)
{
//设置窗口的大小为正常大小
this.WindowState = FormWindowState.Normal;
}
} private void button2_Click(object sender, EventArgs e)
{
MessageBox.Show("快捷键Alt+G,Window is closing");
this.Close(); } private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show("快捷键Alt+C,Window is closing");
this.Close();
} private void txtNum_KeyPress(object sender, KeyPressEventArgs e)
{
//触发该事件的控件,通过sender转换成严控件
TextBox currentTxt = sender as TextBox; if(e.KeyChar < '0' || e.KeyChar > '9')
{
//阻止输入
e.Handled = true;
} //让用户能输入退格键,其ASCII是8
if(e.KeyChar == 8)
{
e.Handled = false;
} //让用户可以输入小数点,小数点ASCII为46
if(e.KeyChar == 46)
{
//检测是否已经输入小数点,么有找到则返回-1
if(currentTxt.Text.IndexOf(".") == -1)
{
//小数点不能出现在第一位
if(currentTxt.SelectionStart > 0)
{
e.Handled = false;
} } } //MessageBox.Show(((int)(e.KeyChar)).ToString()); } private void btnEqual_Click(object sender, EventArgs e)
{
double num1 = Convert.ToDouble(txtNum1.Text);
double num2 = Convert.ToDouble(txtNum2.Text);
//C#特有
switch(cboOperator.Text)
{
case "+":
lbResult.Text = (num1 + num2).ToString();
break;
case "-":
lbResult.Text = (num1 - num2).ToString();
break;
case "*":
lbResult.Text = (num1 * num2).ToString();
break;
case "/":
lbResult.Text = (num1 / num2).ToString();
break;
}
} private void Form1_Load(object sender, EventArgs e)
{
cboOperator.SelectedIndex = 0;
}
}
}

  

tab键、快捷键、默认按钮、小数点输入的使用--四则运算的更多相关文章

  1. iOS 自定义的CodeSnippets添加按下tab键切换到指定输入位置

    在需要使用tab来选中并输入内容的地方,添加: <#输入待覆盖的内容#>

  2. [No000018F]Vim自动缩进配置、原理和tab键替换空格-Vim使用技巧(4)

    一.Vim缩进介绍 在没有设置Vim自动缩进的条件下,可以手动使用Vim命令对特定行进行缩进处理.在Vim插入模式下,按下 Tab 键时默认会输入一个制表符,可通过Vim配置项将 Tab 替换为空格, ...

  3. sublime插件emmet的配置、使用及快捷键Ctrl+E修改成Tab键操作

    一.emmet在sublime中的配置与使用: 1.点击sublime text 3的图标,打开编辑器: 2.按键“ctrl+shift+p”,或者单击菜单->工具->命令面板: 3.打开 ...

  4. 将vim的UltiSnips的快捷键彻底从tab键中分离

    在我之前的<<vim之补全1>>和<<vim之补全2>>中曾经成功的将vim的supertab和UltiSnips共用一个tab键, 这样做的优点的两种 ...

  5. VS2015使用技巧 为什么我们可以输入cw后按两下tab键出现console.writeline

    镇场诗: 大梦谁觉,水月中建博客.百千磨难,才知世事无常. 今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ 为什么 ...

  6. xshell通过xftp传输Windows文件到Linux:在输入put后,再摁 TAB 键,可显示当前文件夹的文件

    在输入put后,再摁 TAB 键,可显示当前文件夹的文件 sftp:/home/yan> put $Recycle.Bin\              BluestacksCN\         ...

  7. C++ tab键实现自动补全输入功能

    一.简介 由于项目中写了个测试的控制台程序,是每次读取一行,即通过getline()来实现的,所以每次必须输入全路径名称,才能实现运行. 大家都觉得麻烦,就写了个tab键自动选择补全的. 目前基本可实 ...

  8. C语言 统计一串字符中空格键、Tab键、回车键、字母、数字及其他字符的个数(Ctrl+Z终止输入)

    //凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ #include<stdio.h> void main(){ , num=, blank=, ...

  9. IAR修改工程名称Tab键设置模板建立

    IAR 修改工程名称 很多时候用IAR开发都是基于已有工程模板开发的,但是工程模板的名称经常让人头疼:以下是修改办法: 从一个实例工程复制后缀名为"dep,ewd,ewp,eww" ...

随机推荐

  1. python闭包的概念及使用

    闭包:在函数里定义了另外一个函数(函数嵌套),内函数里运用了外函数的变量,外函数返回内函数的函数引用(函数名). nonlocal 的使用:闭包内部函数可直接调用外部函数的变量,如果修改需要使用non ...

  2. 简单复习一下ArrayList的扩容原理

    刚刚跟几个好朋友喝完小酒回家,简单大概复习一下ArrayList的扩容原理,由于头有点小晕,就只大概说一下扩容的原理哈: 首先ArrayList实现了List接口,继承了AbstractList,大家 ...

  3. mybatis入门(二):增删改查

    mybatis的原理: 1.mybatis是一个持久层框架,是apache下的顶级项目 mybatis托管到googlecode下,目前托管到了github下面 2.mybatis可以将向prepar ...

  4. 版本控制工具——Git的拓展使用

    一.使用Github 通过前面两节已经配置了SSH Key与Github上的相关设置,接下来介绍常用的使用 使用Fork克隆一份到本地仓库 之后可以在自己的仓库克隆一份到本地 git clone gi ...

  5. Awesome Django

     Awesome Django    If you find Awesome Django useful, please consider donating to help maintain it. ...

  6. 这样的SQL居然能执行

    select /*! distinct   cities.id from cities  join countries on cities.id = countries.id limit 10 */;

  7. Net Core学习笔记

    Net Core 官网:https://dotnet.github.io/ Net Core Api: https://docs.microsoft.com/en-us/dotnet/api/?vie ...

  8. Jmeter接口测试(二)工具介绍

    一.Jmeter文件目录介绍 ◆ bin:可执行文件目录 Bin 目录文件 jmeter.bat:windows 的启动文件 jmeter.log:日志文件 jmeter.sh:linux 的启动文件 ...

  9. Unity初探之黑暗之光(1)

    Unity初探之黑暗之光(1) 1.镜头拉近 public float speed=10f;//镜头的移动速度 ;//镜头的结束位置 // Update is called once per fram ...

  10. ajax的$.get()方法和tomcat服务器的交互

    AJAX AJAX = 异步 JavaScript 和 XML. AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术. Ajax  get()方法 定义和用法 $.get() 方法 ...