代码功能

一、隐藏当前窗口

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. Atitit。团队建设--管理最佳实践--如何留住核心人才,防止人才流失 ??

    Atitit.团队建设--管理最佳实践--如何留住核心人才,防止人才流失 ?? 1. 1.人才流失后果 1 1. 1.员工的离职带走商业技术秘密和客户等资源 1 2. 2.影响在职员工的情绪,极大挫伤 ...

  2. Atitit.spring体系结构大总结

    Atitit.spring体系结构大总结 1. Srping mvc 1 2. Ioc 4 3. ApplicationContext在BeanFactory的基础上构建,区别 4 4. Aop 5 ...

  3. MongoDB 学习 第八节 驱动实践

    作为系列的最后一篇,得要说说C#驱动对mongodb的操作,目前驱动有两种:官方驱动和samus驱动,不过我个人还是喜欢后者, 因为提供了丰富的linq操作,相当方便. 官方驱动:https://gi ...

  4. Struts2初学 Struts.xml详解二

    A.使用继承实现设置全局视图    package节点中还可以设置全局的视图,如:     <global-results>         <result name="e ...

  5. nyoj746 整数划分(四)

    整数划分(四) 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述 暑假来了,hrdv 又要留学校在参加ACM集训了,集训的生活非常Happy(ps:你懂得),可是他最近遇到 ...

  6. 02、Quick Start for Windows phone

    在使用这个 SDK 提供的功能前,必须先添加类库的引用到你的工程里.参考: Download and add the libraries to the project. 定义你的 XAML 的 UI ...

  7. jq使用自定义属性实现有title的tab切换

    <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...

  8. org.apache.hadoop.hbase.DoNotRetryIOException: Class org.apache.phoenix.coprocessor.MetaDataEndpointImpl cannot be loaded Set hbase.table.sanity.checks to false at conf or table descriptor if you want

    https://stackoverflow.com/questions/38495331/apache-phoenix-unable-to-connect-to-hbase 这个坑不该啊 首选配置hb ...

  9. 使用shell读取文本文件发送到kafka

    #!/bin/sh ## 参数定义 dt=`date +"%Y%m%d" -d "-1 days"` outpath=/xxxx_log_${dt}.txt b ...

  10. elasticsearch安装与使用(2)-- centos7 安装测试的集群工具elasticsearch head

    elasticsearch-head是elasticsearch(下面称ES)比较普遍使用的可监控.测试等功能的集群管理工具,是由H5编写的单独的网页程序.使用方法网上很多,这里教大家一个超简单安装h ...