代码功能

一、隐藏当前窗口

this.Hide();//隐藏当前窗口

二、调用计算机自带

System.Diagnostics.Process.Start("calc.exe");//调用自带计算器

System.Diagnostics.Process.Start("notepad.exe");//调用自带记事本

三、窗口名称

this.Text ="点/加菜";

四、显示调用窗口

showdialog()与show的区别

显示 窗口:

 frmMain main = new frmMain();

1)main.Show();
2) main.showdialog();

showdialog就是显示有模式的窗体,showdialog后面的语句不会执行,直到显示的窗体被关闭。show就是无模式的窗体,显示窗体后不论窗体是否关闭都执行show后面的语句。

面对多窗口的调用的时候,我们往往不喜欢窗口之间的随意切换,那样我们还有花费时间寻找我们要用的窗口,而且,一但出现问题,窗口的顺序也有可能被再次打乱,很是不顺手,那么我们怎么办呢? 我们可以将show方法转化为showdialog方法,顾名思义,showdialog是一个进行路经绑定的show方法,他是不可以自由切换的,换言之,就是,当你没有关闭你当前页的前提下,你是无法关闭该页面后面的任一页面的,它是当前唯一(路经打开)为true的。 而show方法由于未进行绑定,它所显示的各个窗口、对话框是可以相互切换,而不需要关闭当前窗口、对话框。但是他由于未进行绑定,所以每个由show方法打开的窗口的顺序是非固定的,如果遇到什么问题,由show方法打开的窗口的顺序可能会有很大的改变!

show()仅仅是显示出来窗口界面而已,也就是和你执行的结果在同一窗口显示,所显示的窗口可以在后台运行,而showDialog()是一个对话框窗口界面,执行结果以新窗口界面出现,不允许进行后台运行,就是你想编辑什么的时候,非得先关闭showDialog()窗口界面才可以进行其他操作.
show()是非模式窗体. showDialog()是模式窗体. 区别在于,以showDialog()打开的窗体,要等窗体关闭后才能操作其他窗体.而show()则不受此限制.
这是最经常的区别了, 还有一个我个人使用的心得,你可以了解
比如你先打开子窗体,想隐藏主窗体。 如果这个时候用Show的话,则会发生的事情是,打开子窗体的同时主窗体又显示出来,而使用ShowDialog()的时候主要当子窗体关闭的时候主窗体才会显示。

举个简单的例子,代码如下:

Form2 f2 = new Form2();

this.Visible = false;

f2.ShowDialog();

this.Visible= true;

这就是模态对话框的与Show的区别。

设置窗口标签

FrmLogin.Tag = 1;//将登录窗体的Tag属性设为1,表示调用的是登录窗体

四、c#的owner的使用方法

获取或设置拥有此窗体的窗体。

Form,表示作为此窗体的所有者的窗体。

若要使某窗体归另一个窗体所有,请为其 Owner 属性分配一个对将成为所有者的窗体的引用。

当一个窗体归另一窗体所有时,它便随着所有者窗体最小化和关闭。例如,如果 Form2 归窗体 Form1 所有,则关闭或最小化 Form1 时,Form2 也会关闭或最小化。并且附属窗体从不显示在其所有者窗体后面。可以将附属窗体用于查找和替换窗口之类的窗口,当选定所有者窗体时,这些窗口不应消失。

在form1中使用form2Form2 childForm = new Form2 ();//this指向主窗口childForm .Owner = this;      --当前myForm1 .Show();

form2中

Form1 myForm1 ;myForm1 = (Form1)this.Owner;

锁定系统
frmLock locksystem = new frmLock();
locksystem.Owner = this;//frmLock窗体归main主窗体
locksystem.ShowDialog();

五、C#中,Application.Exit和Close有什么不同

Application.Exit会关闭所有窗口并退出程序,Close只是关闭当前窗口,如果当前窗口是Application.Run()方法里面传入的窗口,那么程序也会退出,如果不是Application.Run()方法里面传入的窗口,那么程序是不会退出的。

//退出系统
private void 退出系统ToolStripMenuItem1_Click(object sender, EventArgs e)
{
if (MessageBox.Show("确定退出本系统吗?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation) == DialogResult.OK)
{
Application.Exit();
}
}

六、窗体事件

private void From_Load(object sender, EventArgs e);   //窗体加载时

private void From_Activated(object sender, EventArgs e);//窗体激活时

七、属性

1)设置窗体边框可以通过设置窗体的FormBorderStyle属性设置。属性值可以通过枚举类型FormBorderStyle获取,它的取值和意义如下表所示。

属性 意义
FormBorderStyle.None 0 无边框
FormBorderStyle.FixedSingle 1 固定的单行边框
FormBorderStyle.Fixed3D 2 固定的三维样式边框
FormBorderStyle.FixedDialog 3 固定的对话框样式的粗边框
FormBorderStyle.Sizable 4 可调整大小的边框
FormBorderStyle.FixedToolWindow 5 不可调整大小的工具窗口边框
FormBorderStyle.SizableToolWindow 6 可调整大小的工具窗口边框
自带方法
1
//
// 摘要:
// 获取或设置包含有关控件的数据的对象。
//
// 返回结果:
// 一个 System.Object,它包含有关控件的数据。默认为 null。
[Bindable(true)]
[DefaultValue(null)]
[Localizable(false)]
[SRCategoryAttribute("CatData")]
[SRDescriptionAttribute("ControlTagDescr")]
[TypeConverter(typeof(StringConverter))]
public object Tag { get; set; }
        //
// 摘要:
// 将窗体显示为模式对话框。
//
// 返回结果:
// System.Windows.Forms.DialogResult 值之一。
//
// 异常:
// T:System.InvalidOperationException:
// 正在显示的窗体已经可见。 - 或 - 正在显示的窗体处于禁用状态。 - 或 - 正在显示的窗体不是顶级窗口。 - 或 - 窗体显示为对话框中已有模式窗体。
// - 或 - 当前进程不在用户交互模式下运行 (有关详细信息,请参阅 System.Windows.Forms.SystemInformation.UserInteractive)。
public DialogResult ShowDialog();
、     //
// 摘要:
// 释放由 System.ComponentModel.Component 使用的所有资源。
public void Dispose();

七、窗口最大化,最小化

  private void button1_Click(object sender, EventArgs e)
{
this.WindowState = FormWindowState.Maximized;
this.notifyIcon1.Visible = true;
} private void button2_Click(object sender, EventArgs e)
{
this.WindowState = FormWindowState.Minimized;
this.notifyIcon1.Visible = true;
}
private void button3_Click(object sender, MouseEventArgs e)
{
this.WindowState = FormWindowState.Normal;
this.Visible = true;
}

this.MaximizeBox = false;最大化按钮不可用

2)窗口屏幕最大化整个屏幕

this.TopMost = true;
this.FormBorderStyle = FormBorderStyle.None;
this.WindowState = FormWindowState.Maximized;

3)窗口屏幕最大化,不占用状态栏

 this.Top = ;
this.Left = ;
this.FormBorderStyle = FormBorderStyle.None;
this.Size = Screen.PrimaryScreen.WorkingArea.Size;

Form.StartPosition属性,确定窗体第一次出现时的位置。这里设置为在父窗体的中间显示。 this.StartPosition = FormStartPosition.CenterParent;

Form.HelpButton属性,确定窗体的标题栏上是否有“帮助”按钮。设置显示,看上去更人性化,但实际不一定会对帮助功能进行实现。Form.HelpButton属性,确定窗体的标题栏上是否有“帮助”按钮。设置显示,看上去更人性化,但实际不一定会对帮助功能进行实现。

Form.MaximizeBox属性,确定窗体标题栏的右上角是否有最大化框。设置不让她显示。 this.MaximizeBox = false;

Form.MinimizeBox属性,确定窗体标题栏的右上角是否有最小化框。设置不让他显示。  this.MinimizeBox = false;

Form.ShowIcon属性,指示是否在窗体的标题栏中显示图标。设置不显示。  this.ShowIcon = false;

Form.ShowInTaskbar属性,确定窗体是否出现在Windows任务栏中。这个当然要节省任务栏的宝贵空间。

this.ShowInTaskbar = false;

Form.FormBorderStyle属性,指示窗体的边框和标题栏的外观和行为。设置这个属性将不允许拖动调整窗体的大小,同时Icon属性将失效,并不显示窗体标题栏图片。

this.FormBorderStyle = FormBorderStyle.FixedDialog;

隐藏禁用三个按钮

this.ControlBox=false

至于关闭按钮,C#窗体编程中,并没有单独一个属性来按钮它。

这三个按钮是一组ControlBox,将this.ControlBox=false 即可同时禁用这三个按钮。一旦这三个按钮都被禁用了,那就都不显示了。

所以,关闭按钮被禁用了,这个窗口就无法通过系统自带的功能来关闭。必须要再写一个关闭的功能用来关闭它。

c# window窗口的更多相关文章

  1. [转载]ExtJs4 笔记(9) Ext.Panel 面板控件、 Ext.window.Window 窗口控件、 Ext.container.Viewport 布局控件

    作者:李盼(Lipan)出处:[Lipan] (http://www.cnblogs.com/lipan/)版权声明:本文的版权归作者与博客园共有.转载时须注明本文的详细链接,否则作者将保留追究其法律 ...

  2. JavaScript:window窗口对象

    在JavaScript中,window表示的就是一个窗口对象.所以在整个处理过程之中,所有的操作都是以弹框为主 的.范例1:使用警告框 <script type="text/javas ...

  3. (转载)JavaScript中的Window窗口对象

    (转载)http://www.ijavascript.cn/jiaocheng/javascript-window-65.html 例子: <html> <head> < ...

  4. ExtJs4 笔记(9) Ext.Panel 面板控件、 Ext.window.Window 窗口控件、 Ext.container.Viewport 布局控件

    本篇讲解三个容器类控件. 一.面板控件 Ext.Panel 一个面板控件包括几个部分,有标题栏.工具栏.正文.按钮区.标题栏位于最上面,工具栏可以在四个位置放置,围绕中间部分正文,按钮区位于最小方.下 ...

  5. python 利用tkinter模块设计出window窗口(搞笑版)

    代码如下 from tkinter import * import tkinter from tkinter import messagebox #定义了一个函数,当关闭window窗口时将会弹出一个 ...

  6. easyUi弹出window窗口传值与调用父页面的方法,子页面给父页面赋值

    <!-- 父页面 --> <!DOCTYPE html PUBLIC "-/W3C/DTD HTML 4.01 Transitional/EN" "ht ...

  7. 窗口-EasyUI Window 窗口、EasyUI Dialog 对话框、EasyUI Messager 消息框

    EasyUI Window 窗口 扩展自 $.fn.panel.defaults.通过 $.fn.window.defaults 重写默认的 defaults. 窗口(window)是一个浮动的.可拖 ...

  8. Window窗口布局 --- DecorView浅析

    开发中,通常都是在onCreate()中调用setContentView(R.layout.custom_layout)来实现想要的页面布局,我们知道,页面都是依附在窗口之上的,而DecorView即 ...

  9. easyui window窗口 随body的滚动条 滚动

    问题描述: 当easyui window窗口弹出的时候,依然可以滚动body 的滚动条,而且window窗口也会随它一起滚动 思路:bootstrap 模态框弹出的时候,给body 添加了 .moda ...

  10. Window 窗口类

    窗口类 WNDCLASS 总结 总结为下面的几个问题: . 什么是窗口类 . 窗口类的三种类型 . 窗口类各字段含义 . 窗口类的注册和注销 . 如何使用窗口类,子类化.超类化是什么 下面分别描述: ...

随机推荐

  1. Nfs实现linux下文件共享

    前提条件 130是第一台机器,131为第二台机器.都为redhat linux64位系统. 1.      共享要求: 130server上生成的清算文件在131文件夹下能够看得到,131文件夹下生成 ...

  2. windows 添加打印机

    控制面板---->硬件和声音---->设备和打印机--->点击添加打印机 最后安驱动(选择通用) OK!

  3. Java Mail(一):telnet实现发送收取邮件

    http://blog.csdn.net/ghsau/article/details/8602076 ******************************* 最近要做一个解析邮件的东东,就顺便 ...

  4. 偏于SQL语句的 sqlAlchemy 增删改查操作

    ORM 江湖 曾几何时,程序员因为惧怕SQL而在开发的时候小心翼翼的写着sql,心中总是少不了恐慌,万一不小心sql语句出错,搞坏了数据库怎么办?又或者为了获取一些数据,什么内外左右连接,函数存储过程 ...

  5. saveFileDialog对话框

    private void button1_Click(object sender, EventArgs e) { saveFileDialog1.Filter = "*.txt|*.txt| ...

  6. UCOS2系统内核讲述(二)_初始化调用函数

    Ⅰ.写在前面 学习本文之前可以参看我前面的文章: UCOS2_STM32F1移植详细过程(汇总文章) UCOS2系统内核讲述(一)_总体描述 还是按照上一篇文章的思维(从外到内),本文(结合源代码)进 ...

  7. 怎样实时判断socket连接状态?

    对端正常close socket,或者进程退出(正常退出或崩溃),对端系统正常关闭 这种情况下,协议栈会走正常的关闭状态转移,使用epoll的话,一般要判断如下几个情况 处理可读事件时,在循环read ...

  8. Redis学习笔记——数据类型及操作

    数据操作 redis是key-value的数据,所以每个数据都是一个键值对 键的类型是字符串 值的类型分为五种: 字符串string 哈希hash 列表list 集合set 有序集合zset 数据操作 ...

  9. 关于Unity的C#基础学习(三)

    面向对象 一.编码注意 1.每个C#的脚本只有唯一的一个类是继承自MonoBehaviour 2.类的名字要和我们的文件名字一样 3.代码的缩进 个人习惯:在类的内部来访问数据成员/成员函数的时候,用 ...

  10. ubuntu samba 安装

    Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,是一种在局域网上共享文件和打印机的一种通信协议. 1. 安装 sudo apt-get install samba samba-c ...