窗体

ExtJs学习笔记之Window组件

二次信任 提交于 2020-01-20 08:53:32
Window窗体组件 window是一个指定的打算作为一个应用程序窗口的面板,默认窗口是浮动的, resizable , 并且 draggable ,默认的,窗体靠document.body呈现。 1、示例: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> <link rel="stylesheet" type="text/css" href="../ext-js-4.2.1/resources/css/ext-all.css" /> <script type="text/javascript" src="../ext-js-4.2.1/ext-all.js"></script> <script type="text/javascript" src="../ext-js-4.2.1/locale/ext-lang-zh_CN.js"></script> <script type="text/javascript"> Ext.onReady(function() { var win = new Ext.Window({ title : '窗体window', width : 500, height : 200, html : '<div>这里是窗体的内容<

C# 实现 About 对话框

风格不统一 提交于 2020-01-19 17:28:07
4.5 实现 About 对话框 前边介绍的 SaveDialog 、OpenDialog 和 FontDialog 都是类库中预先定义的对话框, 本 节介绍如何创建满足一定要求的自制对话框。对话框其实就是窗体,其基类和主窗体一样, 是 System.Windows.Forms.Form。 只是一般对话框只有关闭按钮, 没有最大化和最小化按钮, 对话框的边界是固定的,不能改变。设计自己的对话框是经常遇到的工作。 (16)选择菜单项项目 / 添加 Windows窗体,弹出对话框,在模板 (T) 编辑框中选择 Windows窗体,在名称栏 (N)编辑框中输入窗体文件名称: formAbout.cs , 单击打开按钮,可以见到一个新窗体。从文件 formAbout.cs 可以看到新建窗体类名也为 formAbout。 (17)修改 formAbout 属性 StartPosition=CenterParent ,表示打开对话框时, 对话框在父窗口的中间。 修改属性 MaximizeBox=False, MinimizeBox=False , 表示没有最大化和最小化按钮,既不能最大化和最小化。 属性 FormBorderStyle=FixedDialog ,窗口不能修改大小。属性 Text=" 诗词歌赋"。 可以在窗体中增加各种控件,例如,小图标, Label控件等。 本例仅增加

C# 鼠标事件

耗尽温柔 提交于 2020-01-19 11:38:26
3.20 鼠标事件 从类 System.Windows.Forms.Control 派生的控件都有鼠标事件,控件的 Click 事件本质 上也是鼠标事件。一些控件还有单独的鼠标事件,例如 Form。鼠标事件有: ? MouseDown:如果鼠标位于控件区域,按下鼠标按键时产生该事件。 ? MouseUp:如果鼠标位于控件区域,抬起鼠标按键时产生该事件。 ? MouseMove:如果鼠标在控件区域移动,产生该事件。 ? MouseEnter:鼠标进入控件区域,产生该事件。 ? MouseLeave:鼠标离开控件区域,产生该事件。 鼠标事件处理函数一般有两个参数: 第一个参数 (object sender) 是产生该事件的对象的属性 Name的值, 例如,为 Form1 的 MouseDown 事件增加事件函数, 单击 Form1,第一个参数 sender 代表 Form1对象。 (MouseEventArgs e)是事件处理函数第二个参数, 代表事件的一些信息,事件不同, 所代表的信息也不相同, 鼠标按下事件处理函数中, e.X 为发生事件时鼠标位置的 x坐标,e.Y为发生事件时鼠标位置的 y 坐标, e.Button为 MouseButtons.Left , 表示单击了鼠标左键等等, Right 和 Middle 则分别代表右键和中间键。 e.Clicks 为鼠标单击的次数

C# 委托与事件应用,不同窗体之间通信

跟風遠走 提交于 2020-01-18 02:02:40
写一个简单的委托与事件的示例,在winform开发中,经常遇到不同窗体调用事件,简单来说就是将方法作为参数进行传递,下面示例简单的阐述了如何使用; 窗体A调用窗体B private void btn_impCase_Click(object sender, EventArgs e) { FormB f = new FormB(); f.initData += new InitTree (InitTreeData); f.Show(); } public void InitTreeData() { … } 窗体B中定义委托与事件 public delegate void InitTree(List<Common.CaseExpInfo> lt); public event InitTree initData; private void btn_ok_Click(object sender, EventArgs e) { if(!string.IsNullOrEmpty( this.txt_path.Text)) { ** initData();** } this.Close(); } 来源: CSDN 作者: 顽石点头foxs 链接: https://blog.csdn.net/zlqy12321/article/details/104005070

WPF窗体设置最大化时禁用更改大小,恢复后允许更改窗口尺寸

怎甘沉沦 提交于 2020-01-17 13:31:59
public class WindowBase : Window { public WindowBase() { } protected override void OnStateChanged(EventArgs e) { ResizeMode = WindowState == WindowState.Maximized ? ResizeMode.NoResize : ResizeMode.CanResizeWithGrip; base.OnStateChanged(e); } } 重写OnStateChanged事件且在base之前更改状态即可 因为如果在base之后设置,属性可能就被系统刷新了,设置也无效 来源: CSDN 作者: 清泉灵弦 链接: https://blog.csdn.net/FireGhost57/article/details/104015960

WINFORM自定义皮肤制作(上)

六眼飞鱼酱① 提交于 2020-01-17 05:27:55
最近要做个软件正在做技术准备,由于WINFORM生成的窗体很丑陋,一个好的软件除了功能性很重要外,UI的体验也是不容忽视的。习惯性的在网上搜素了下,换肤控件也有好几款,但是有些用起来不是很好用,好点的也要花很多银子哦,而且毕竟是别人写的,心里总不是个滋味,所以决定自己尝试着写写看,花了一个晚上终于做出来了个DEMO,貌似还不错,贴图如下(图片是直接是用的暴风影音的,寒自己一个。。) 下面和大家分享下。 首先分析下皮肤的制作原理,我的理解是把整个窗体(去边框后)划分为9个区域(如果有更复杂的界面,可以划分更多),有图有真相: 然后准备皮肤素材,切图,我的切图如下: 接着可以开工了: 1.初始化图片资源变量 protected int formMinX = 0;//最小化按钮的X坐标 protected int formMaxX = 0;//最大化按钮的X坐标 protected int formCloseX = 0;//关闭按钮的X坐标 protected int formTitleMarginLeft = 0;//标题栏的左边界 protected int formTitleMarginRight = 0;//标题栏的右边界 Image imgTopLeft = (Image)Resources.topleft;//窗体顶部左上角图片 Image imgTopRight =

.net面试题总结(一)

|▌冷眼眸甩不掉的悲伤 提交于 2020-01-17 01:44:57
(1) 面向对象的语言具有的特性 _________________ 。 (2) 能用 foreach 遍历访问的对象需要实现 _______ 接口或声明 _______ 方法的类型。 (3) c# 中的三元运算符是 ______ 。 (4) 当整数 a 赋值给一个 object 对象时,整数 a 将会被 _________ 。 (5) 类成员有 _____ 种可访问形式? (6) public static const int A=1; 这段代码有错误么?是什么? (7) float f=-123.567F; int i=(int)f; i 的值现在是 _____? (8) 利用 operator 声明且仅声明了 == ,有什么错误么 ? (9) 委托声明的关键字是 ______? (10) 用 sealed 修饰的类有什么特点? (11) 在 Asp.net 中所有的自定义用户控件都必须继承自 _______? (12) 在 .Net 中所有可序列化的类都被标记为 ___________? (13) 在 .Net 托管代码中我们不用担心内存漏洞,这是因为有了 ___________? (14) 下面的代码中有什么错误吗? _________ using System; class A { public virtual void F(){ Console.WriteLine("A

.NET CORE(C#) WPF亚克力窗体

纵饮孤独 提交于 2020-01-17 00:38:23
微信公众号: Dotnet9 ,网站: Dotnet9 ,问题或建议: 请网站留言 , 如果对您有所帮助: 欢迎赞赏 。 .NET CORE(C#) WPF亚克力窗体 阅读导航 本文背景 代码实现 本文参考 源码 1. 本文背景 本文介绍使用FluentWPF控件库实现亚克力效果的窗体。 2. 代码实现 使用 .Net Core 3.1 创建名为 “AcrylicWindow” 的WPF模板项目,添加三个Nuget库:MaterialDesignThemes、MaterialDesignColors和FluentWPF,其中亚克力效果是由FluentWPF控件库实现的。 以下为三个库具体版本: <?xml version="1.0" encoding="utf-8"?> <packages> <package id="FluentWPF" version="0.4.0" targetFramework="net461" /> <package id="MaterialDesignColors" version="1.1.2" targetFramework="net461" /> <package id="MaterialDesignThemes" version="2.4.1.1101" targetFramework="net461" /> </packages>

Qt 中QPainter 使用中出现的问题

牧云@^-^@ 提交于 2020-01-16 16:29:49
这两天在使用QPainter的过程中出现了一些问题,记录一下。 测试程序很简单,写一个继承自QWidget的类,重载其paintEvent函数进行绘图。 case1: 在paintEvent函数中使用一个临时的painter对象进行绘制。 结果:能够正常绘制。 case2: 在paintEvent函数中动态分配一个painter对象进行绘制。 结果:能够正常绘制。 case3:将Painter声明为一个类的成员变量进行绘制。 结果:不能正常绘制 分析:由于我在初始化m_painter时,用到的是QPainter m_painter(this); 这句代码等于QPainter m_painter,m_painter.begin(this); 但是m_painter.begin()函数只有在paintEvent()函数中调用才是有意义的(Qt中的绘制动作只能在paintEvent()函数中完成) 由于此时begin()函数隐式在构造函数中被调用了,最终倒是绘图动作失效。 试探的解决办法:在用不带参数的构造函数初始化painter,然后再paintEvent函数中利用begin函数为painter绑定对象。 试探的解决方法的结果;窗体先是正常绘制,接着就崩溃了,并报出如下错误: 我原本的思路是:当MyWidget对象析构是,就会自动调用其内部成员变量painter的析构函数

delphi7学习:文件构成

荒凉一梦 提交于 2020-01-16 12:49:42
Delphi 是以工程为中心来开发应用程序的,即每个应用程序都是一个工程,由一个或多个文件及 工程文件组成。组成工程的几种文件包括:工程文件、单元文件、窗体文件、资源文件、工程选项及 桌面配置文件、中间编译单元、备份文件、包文件等。 1.工程文件( .dpr) 工程文件的扩展名为.dpr。工程文件包含了应用程序的入口,位于“ Begin”和“ End”之间。 注意:用户应该尽量避免修改工程文件内的代码,除非确实有修改它的原因,否则最好让 Delphi 自行管理工程文件。 2.单元文件( .pas) 单元文件的扩展名为.pas。通常每个工程至少有一个单元,单元内为源代码。在编写程序之前, 必须对单元文件内部的结构有所了解。 1. Unit 部分 Unit 部分指明了文件的名字。 2.接口部分 接口部分起始于“ interface”行,结束于“ implementation”行之前。 定义在接口部分的变量、类型、常数等可以在单元外使用。 注意:接口部分没有运行代码。 3.实现部分 实现部分是编写运行代码的地方,可以包含类型、变量、常数等。定义在实现部分的变量、类型、 常数只能在单元内部使用;定义在实现部分的过程或函数,在接口部分没有声明,则只能在单元内部 使用。如果要用其他单元的访问过程或函数,要将其声明放在接口部分,将定义放在实现部分 4. Uses 子句 Uses