- 博客(1806)
- 资源 (15)
- 收藏
- 关注
原创 在Console中输出彩色字体(原码)
分别存成ConsoleColour.cs和Console.cs,然后提示符下编译。先是consolecolour.cs类,用来调用颜色。生成console.exe可执行文件。
2025-03-13 16:36:45
281
原创 在C# .NET 中建立一个平滑的进度条
在早先的进度条控件版本中,例如在 Microsoft Windows Common Controls ActiveX 控件中提供的版本,您可以看到进度条有两种不同的视图。2、在 Add New Project 对话框中,在 Project Types 中点击 Visual C# Projects,在 Templates 中点击 Windows Application,并点击 OK。该属性表示了进度条的当前值。d、在 Name 框中,填上 SmoothProgressBar ,并点击 OK。
2025-03-13 16:36:39
928
原创 C#下实现动态系统托盘图标
对于技术开发人员来说,.Net平台的两大特性是非常卓越的,首先是其所提供的公共语言运行时,也就是公用语言运行平台,另一方面就是其庞大而全面的统一编程类。当鼠标移到其上停留一下时,将显示一个简单的提示信息,点击该图标则将隐藏主窗口,单击右键,出来一个菜单,选"动画图标开始"和"动画图标结束"可以控制图标状态。本文通过向大家介绍一个.Net平台上用C#写的可以停放在任务栏上的图标程序(类似于Flashget、OICQ那种系统托盘图标)来和大家一起体验一下用C#编程的乐趣。,Text属性设置为"这是个示例程序!
2025-03-13 16:36:33
549
原创 使用Shell_NotifyIcon 建一个标准气泡通知盒图标
虽然.net 扩展并平民化了大部分的API,但就notifyicon 来讲,系统自己的notifyicon 做的必然安全,以至于 shell32.dll 新版本(此气泡功能是win98 的ie5 就具备)的功能完全得不到体现,在优快云 我也见过不少的人都在为扩展一个更完美的notifyicon 做努力,为此笔者就在中秋前夜的一些空闲写了这个扩展控件权砖引玉,这二天就有不少朋友扔鸡蛋,于是特撰此稿来补充此控件的功能及它的具体内容以便于朋友们的二次开发,本文也定义了大部分的一些的常数和结构。
2025-03-13 16:36:28
642
原创 制作一个WinForm的闪屏
这会阻碍主窗体的显示,所以只要显示闪屏,主窗体就不会显示。最容易的方法就是用信号通知工作线程关闭窗体——除非该线程的方法(Show)正忙于在窗体的消息循环中(ShowDialog方法)填充消息,而不能查看标记或事件。你可以通过WinForms的可视设计窗口( Visual Designer)充分利用所需要的变化,将一个缺省的窗体转换成一个闪屏——这就证明了WinForms不仅简单易用,而且还有很多功能。注意,你必须将SplashForm的客户端大小设置为图片框的大小,它会根据图片的大小自动调节自己的大小。
2025-03-13 16:36:19
813
原创 全面掌握C#中的对话框
lblCaption.Font = new System.Drawing.Font ("宋体" , 10.5F , System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ( ( System.Byte ) ( 134 ) ) );在编程中经常使用到的对话框大致有六个,他们分别是:"选择文件对话框"、"保存文件对话框"、"颜色对话框"、"打印预览对话框"、"打印机选择对话框"和"字体选择对话框"。那么在C#中如何使用?
2025-03-13 16:36:16
746
原创 Visual C# 对话框全接触
在我们的教程,共讲述了文件对话框(FileDialog)、字体对话框(FontDialog)、,颜色对话框(ColorDialog)、打印预浏对话框(PrintPreviewDialog)、页面 设置(PrintDialog)、打印对话框(PrintDialog),这几个对话框,其中文件对话框(FileDialog)又有:打开文件对话框(OpenFileDialog)、保存文件对话(SaveFi leDialog)这两个对话框。在介绍的过程中我用到了一个自己开发的类:File,主要是文件操作的。
2025-03-13 16:36:14
738
原创 用C#获取浏览文件夹对话框
接着,我们新建一个FolderDialog类,此类从FolderNameEditor类继承,在此类中新建一个FolderBrowser类的实例。为了取得文件夹的路径,设置一个Path属性,返回选取文件夹的路径。我们知道,C#里面有选择文件的对话框控件,却没有选择文件夹的对话框控件,不少人为了选择一个文件夹只好自己用TreeView类来处理,其实在C#里面完全不用那么麻烦,我们可以用C#的FolderNameEditor类的子类FolderBrowser类来实现获取浏览文件夹对话框的功能。
2025-03-13 16:36:11
412
原创 如何重画Windows控件
你也可以通过EventHandler来让控件响应更多的事件,例如,我们可以给按钮添加鼠标悬停效果,给MouseEnter和MouseLeave分别加上EeventHandler,这样,你在事件响应函数里写的代码就会被调用。3、在新控件的构造函数中添加:拖3个按钮到Form1上,将其中一个的"Enable"设为"false",右击鼠标,单击"View Code",在代码中用"MyButton"替换掉"System.Windows.Forms.Button";最终,我们就得到了如图2所示的按钮控件。
2025-03-13 16:36:07
435
原创 简单实现系统托盘
添加 notifyIcon1 控件。并设置 contextMenu 属性。添加 contextMenu1 上下文菜单控件。添加 timer控件。
2025-03-13 16:36:02
179
原创 Windows Forms菜单设计全攻略(下)
在上面对事件响应方法Test()的定义中,有两个参数,一个分别表示引发事件的对象(object)sender,由于引发事件的对象不可预知的,因此我们把其声明成为object类型,所有的对象都适用;除了部分类(如集合类)以外,在Windows Forms中,大部分菜单相关的类都是由Menu类继承而来,在Menu中提供了一个MenuItems的菜单项目集合,通过其可以达到非常方便的管理一个菜单系列中的菜单项(如添加、删除等),还可以构建一个菜单项的下级子菜单等。在.Net中,菜单项对象模型其实是一个树状的。
2025-03-12 08:52:37
906
原创 Windows Forms菜单设计全攻略(上)
另外在程序窗体的许多地方单击鼠标右键将会弹出一个针对性的快捷菜单(也可以称为弹出式菜单),单击将执行相应的功能,使得软件的应用变得更加简单,更加人性化。在.Net中,C#是支持快速开发的,因此,通过使用相应的开发工具(如Visual Studio .Net)也可以通过简单的鼠标拖放操作完成大部份的菜单程序设计。一般的菜单主要是指窗体的主菜单及子菜单。通过使用菜单项集合类,你可以使用集合的各种操作方法,从而非常方便的管理一系列的菜单项,如一个主菜单上的所有菜单项及一个主菜单下的所有子菜单等。
2025-03-12 08:52:34
365
原创 Visual C#的菜单编程
在.Net FrameWork SDK中有一个叫做System.Windows.Forms.dll文件,其中定义了一个名为System.Windows.Froms的名称空间,此名称空间中封装了很多和界面设计相关的类、对象。用过Delphi的程序员都知道在在Delphi中,也有MainMenu这个对象,MainMenu在程序设计中表现为菜单项的容器,而MenuItem就是要往这个容器中添加的内容。程序的主要功能是通过"添加菜单"按钮在第二个主菜单项下(即"运行菜单项目"下)加入一个子菜单。
2025-03-12 08:52:10
568
原创 自画菜单中如何触发MeasureItem事件的问题及解决办法
默认的designer是english的,菜单显示正常。但是切换到中文后,主菜单的汉字都挤到一起了。如果中文是默认语言,那么切换到english之后,english的菜单现实的宽度和汉字的时候是一样的。后来突然想到,应该这么搜索:fired MeasureItem event in a menu,找到了和上面类似的解决方法。问题原因,应该是:MeasureItem这个event只有在第一次显示的时候或者“必要”的时候,才被触发。// mainmenu是我扩展的,所有的redraw都在里面。
2025-03-12 08:52:07
241
原创 如何用C#编程修改系统菜单?
控件一般都用 Control.ContextMenu 得到上下文菜单,窗体用 Form.Menu 获得主菜单,但没有 SystemMenu 或是其它的属性 用 Menu 来直接存取系统菜单。在SysMenu中,IDC_MYCOMMAND值为 100. 如果你使用的值小于0xF000, 你要保证不和SC_MINIMIZE, SC_MAXIMIZE 或其它内建的系统命令冲突。所有需要做的只是在你的窗体构造函数中添加很少的代码。有时我感觉就像坏掉的唱片,因为如此多的C#问题,我都用相同的答案:托管。
2025-03-12 08:51:58
650
原创 用C#和VB.NET实现Office XP风格的菜单
好了,这些是题外话了。这种移植很枯燥,但可以很快熟悉新的Beta2的类库和函数,Show出来的菜单还不错,感觉是Office2000风格的菜单。最后一部分是制作VS.NET或XP风格的例子,上面那个例子的效果不能使我完全满意,然后我重新写了另外一个,不过我对最后的结果还不是很满意,因为我的没有上一个例子那么完整,例子中我只显示了这个风格的菜单,对于事件响应、状态栏更新、tooltips、菜单的状态(enabled state)等处理都没有考虑,我把这些归结为时间问题,并承诺自己下次把它做得更好。
2025-03-12 08:51:54
560
原创 C#,读取Xml生成菜单
/添加处理Click事件的方法,由于DataMenuItem是带有数据的,所以这个处理方法可以根据数据的不同来做不同的处理.a)首先,从MenuItem派生一个DataMenuItem(即包含数据的菜单之意),因为Xml源文件里可能有很多数据需要保存,而MenuItem没有保存数据的地方。//这个只是测试一下,实际中可以根据情况的不同随意取用DataMenuItem里的数据;if(Node.ChildNodes.Count>1)//因为即使没有子节点,Node.ChildNodes.Count也会是1。
2025-03-12 08:51:52
546
原创 C#实现OutlookBar
currentpanel.AddIcon("新增项目",Image.FromFile("img1.ico"),new EventHandler(PanelEvent));// TODO: 在 InitializeComponent 调用后添加任何构造函数代码。//记录当前的面板;string panelname="新增组";//创建outlookbar。利用OutlookBar命名空间。//创建类面板下的子项目。//得到被选的面板索引。//在当前组新增项目。//相应子项目的事件。
2025-03-12 08:51:18
843
原创 C#字型窗体
DEFAULT_PITCH | FF_SWISS, "宋体");//结束记录窗体轮廓路径。//设置背景为透明模式,这是必须有的。//把所记录的路径转化为窗体轮廓句柄。//赋予窗体指定的轮廓形状。//开始记录窗体轮廓路径。
2025-03-12 08:50:58
443
原创 窗体的动画效果
AW_CENTER:若使用了AW_HIDE标志,则使窗口向内重叠,即收缩窗口;若未使用AW_HIDE标志,则使窗口向外扩展,即展开窗口。当使用AW_CENTER标志时,该标志将被忽略。当使用AW_CENTER标志时,该标志将被忽略。当使用AW_CENTER标志时,该标志将被忽略。函数功能:该函数能在显示与隐藏窗口时产生两种特殊类型的动画效果:滚动动画和滑动动画。
2025-03-11 08:19:50
234
原创 窗体技巧集(原创)
添加继承的窗体/打开/浏览/ 选择一个类库文件(*.dll)项目属性/通用属性/常规/输出类型 选择“类库”窗体总在最前面: 设置topMost属性。* 通过属性栏ICON来设。将窗体程序编译成类库。4.动态设置窗体的光标。
2025-03-11 08:19:44
137
原创 用VC#编写仿MSN Messager的滚动提示窗口
当你在聚精会神的在电脑上做一件事的时候,一定不会喜欢突然被"咚"一下出现在屏幕中心的对话框打扰,它的这种设计不但非常体贴用户,而且效果还很酷。好了,滚动窗体的代码编写到这里就完成了,当然,它本身只实现了一个比较简单的窗体滚动滚出效果,具体如何去应用还应该配合你的程序来完成。当然,你还可以为它添加更多的功能,比如从窗体的任意位置显示(这里只是从右下角显示),淡入淡出效果,加上声音等等。并在窗体上加上你打算要显示的文字(实际应用中一般是在程序中动态加载),将窗体的背景设置为你想要的图片和合适的大小。
2025-03-11 08:19:35
780
原创 用Visual C#开发WinForm的应用程序
举例如下:当我在自我介绍的时候(其实就是在定义我的属性),我会说"我的名字叫xx","我的年龄是xx","我的邮箱是xx"……StartPosition 这个属性有点类似于"Location"属性,"Location"属性定义的是WinForm的绝对位置,而本属性定义的是WinForm的相对属性。本属性的值定义为"CenterScreen"、"Manual"、"WindoowsDefaultLocation"、"WindowsDefaultBounds"、"CenterParent"
2025-03-11 08:19:33
692
原创 用Visual C#做WinForm的应用程序
举例如下:当我在自我介绍的时候(其实就是在定义我的属性),我会说"我的名字叫xx","我的年龄是xx","我的邮箱是xx"……StartPosition 这个属性有点类似于"Location"属性,"Location"属性定义的是WinForm的绝对位置,而本属性定义的是WinForm的相对属性。本属性的值定义为"CenterScreen"、"Manual"、"WindoowsDefaultLocation"、 "WindowsDefaultBounds"、"CenterParent"
2025-03-11 08:19:30
337
原创 Visual C#实现窗体间数据传递(2)
第一个功能的实现思路是把从窗体看成是主窗体的一个实例,加入到从窗体中的组件,可以看出是从窗体中定义的一个个变量,由于从窗体中加入的组件的组件缺省定义类型是Private(私有的),所以要想访问这些组件,必须改变为Public(共有的);这是因为,上文中修改了从命名空间System.Windows.Forms中的Form类派生而得到的Form2类的构造函数,由于构造函数中的参数和类型都是固定的,而主窗体向从窗体传递数据,就是通过构造函数中的参数来实现的,所以就造成了上面的那个缺点。
2025-03-11 08:19:27
809
原创 Visual C#中WinForm的编程
举例如下:当我在自我介绍的时候(其实就是在定义我的属性),我会说"我的名字叫xx","我的年龄是xx","我的邮箱是xx"……StartPosition 这个属性有点类似于"Location"属性,"Location"属性定义的是WinForm的绝对位置,而本属性定义的是WinForm的相对属性。本属性的值定义为"CenterScreen"、"Manual"、"WindoowsDefaultLocation"、"WindowsDefaultBounds"、"CenterParent"
2025-03-11 08:19:24
778
原创 窗体间传值和窗体间互操作
但是,修改时,还必须修改父窗体的状态,我采用的一个委托,将委托作为参数传递个子窗体,在子窗体中,要更改父窗体的地方,调用这个委托。今天遇到一个非常棘手的问题:子窗体在关闭时传递一个对象给父窗体。窗体关闭时会发生数据验证,当数据不正确时,窗体不可关闭。由于编写之初总在思考一个完美的办法,导致代码总无法通过,最后,不得不使用最笨拙但有效的办法:公共静态变量。这个静态变量不论是子窗体还是父窗体持有,都没有关系。比如:当子窗体不一定有时,一定有时,据条件存在时,情况并不一样。现在,在子窗体中可以修改公共数据了。
2025-03-11 08:19:18
236
原创 窗体间传递复杂数据
在设计窗体程序时往往需要相互调用的窗体间传递复杂的数据,有时候甚至需要子窗体修改父窗体的内容。这些办法我感觉都不是特别好,会导致父窗体与子窗体耦合过于紧密,对任何一个窗体的修改需要重新编译另外一个窗体。如果需要在子窗体中改变父窗体状态,也可以在这个结果对象中定义委托与事件来达到目的。这样确保父窗体知道子窗体,而子窗体不知道父窗体。同时两个窗体都依赖于结果对象,结果对象的稳定性也决定了父窗体与子窗体关系的稳定性。首先定义一个结果对象,用来存放子窗体返回的结果。同时定义一些事件,可以让子窗体修改父窗体的状态。
2025-03-11 08:19:11
362
原创 C#中实现窗体间的数据传递
第一个功能的实现思路是把从窗体看成是主窗体的一个实例,加入到从窗体中的组件,可以看出是从窗体中定义的一个个变量,由于从窗体中加入的组件的组件缺省定义类型是Private(私有的),所以要想访问这些组件,必须改变为Public(共有的);这是因为,上文中修改了从命名空间System.Windows.Forms中的Form类派生而得到的Form2类的构造函数,由于构造函数中的参数和类型都是固定的,而主窗体向从窗体传递数据,就是通过构造函数中的参数来实现的,所以就造成了上面的那个缺点。
2025-03-11 08:19:03
685
原创 一个Xp风格的表单类(一)
bmp.DrawString(this.Text,new Font("宋体",9,FontStyle.Bold),new SolidBrush(Color.White),32,10);g.DrawString(this.Text,new Font("宋体",9,FontStyle.Bold),new SolidBrush(Color.White),32,10);//托盘图标双击事件。
2025-03-11 08:19:00
588
原创 C#中如何对当前窗体进行打印预览
[System.Runtime.InteropServices.DllImport("gdi32.dll")]public static extern long BitBlt (IntPtr hdcDest, int nXDest, int nYDest, int nWidth, int nHeight, IntPtr hdcSrc, int nXSrc, int nYSrc, int dwRop);private Bitmap memoryImage;private void CaptureScre
2025-03-11 08:18:58
497
原创 使用C#画非客户区
鼠标事件的Enum</param>this.menuSize.Text = "大小(&S)";this.menuMax.Text = "最大化(&X)";/// <param name="dx">X座标</param>/// <param name="dy">Y座标
2025-03-11 08:18:55
1012
HttpWatchPro-ha-crack
2012-05-28
汽车美容管理系统(C#+sqlserver2005)
2011-12-23
网页制作css2.0手册
2011-08-04
C# 构建可扩展的应用程序(插件)
2011-07-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人