MFC,QT与WinForm,WPF简介】的更多相关文章

编程语言的组成编程语言做为一种语言自然和英语这些自然语言有类似的地方.学英语时我们知道要先记26个字母,然后单词及其发音,接下来就是词组,句子.反正简单的说就是记单词,熟悉词法,句法.接下来就是应用了,听说读写.而使用相同语言的人大脑里都有个翻译器,可以把自己的想法翻译成语言然后用说或写表达出来,而听和读则把接收来的语言翻译成自己大脑能理解的思想. 那编程语言首先也是像英语一样会制定一些单词,然后词法,句法.像int ,char这样的类型关键字,或其他一些关键字就是单词.但这样的语言机器不认识的…
对比MFC资源文件谈谈WPF布局方式 MFC方式 对于传统的MFC基于UI的应用程序设计通常分两步走,首先是设计UI,使用的是RC文件,然后是代码文件,对RC文件进行操作,如下面Figure 1 的基于对话框的应用程序,其对应的代码如Figure 2所示,这就是MFC时代的所见即所得,如大家所见,每个控件的代码都和位置都是写死的坐标,这样会带来的问题是当你改变系统运行的的DPI或者软件需要支持本地化的时候,由于有的语言对于同样的意思需要比较长的文字表示,就会带来文字显示不下或者显示不完整的情况.…
Qt Model/View模式简介 Qt 4推出了一组新的item view类,它们使用model/view结构来管理数据与表示层的关系.这种结构带来的 功能上的分离给了开发人员更大的弹性来定制数据项的表示,它也提供一个标准的model接口,使得更多的 数据源可以被这些item view使用.这里对model/view的结构进行了描述,结构中的每个组件都进行了解释, 给出了一些例子说明了提供的这些类如何使用. Model/View  结构 Model-View-Controller(MVC),…
在新版本的BeetleX.FastHttpApi加入了对netstandard2.0支持,如果程序基于.NetFramework4.6.1来构建WinForm或WPF桌面程序的情况下可以直接把BeetleX的HTTP嵌入到程序中,轻易就能实现一个本地化的HTTP服务并提供静态资源和WebAPI的调用处理:以下简单地介绍在WinForm/WPF引入BeetleX.FastHttpApi的HTTP服务. 引用Beetlex 组件在1.4.5.8版本后加入了对netstandard2.0的支持,只需要…
Winform/WPF 中嵌入 office ppt(powerpoint)解决方案示: 1. 在winform中操作ppt,翻页.播放.退出:显示 总页数.当前播放页数 2. 启动播放ppt时录制视频,ESC退出后停止录制 3. 启动播放ppt直播推流,ESC退出后停止推流 4. 场外电脑桌面同屏传输,讲A电脑ppt画面传输至B桌面 QQ:505970935…
优雅的在WinForm/WPF/控制台 中使用特性封装WebApi 说明 在C/S端作为Server,建立HTTP请求,方便快捷. 1.使用到的类库 Newtonsoft.dll 2.封装 HttpListener HttpApi类 public class HttpApi { private static List<HttpListener> HttpListenerList = new List<HttpListener>(); /// <summary> ///…
提供PPT嵌入Winform/WPF解决方案,Winform/WPF 中嵌入 office ppt 解决方案 Winform/WPF 中嵌入 office ppt(powerpoint)解决方案示: 1. 在winform中操作ppt,翻页.播放.退出:显示 总页数.当前播放页数 2. 启动播放ppt时录制视频,ESC退出后停止录制 3. 启动播放ppt直播推流,ESC退出后停止推流 4. 录制电脑桌面.摄像头头像.声音保存为本地视频:   -- 适用于老师.医生.课件分享等5. 推流:讲演讲人…
后续来啦:Winform/WPF中快速搭建日志面板 继昨天发文ASP.NET Core 可视化日志组件使用(阅读文章,查看视频)后,视频下有朋友留言 "Winform客户端的程序能用它不?",微信也有朋友问能否嫁接到WPF上,站长今早尝试了,是可以的! 原理是将Winform或WPF 应用程序,宿主到ASP.NET Core Web API上,具体先来个小视频看看效果,想要代码直接往下面翻: [视频占位] 实战步骤: 创建一个 WPF 应用程序 添加ASP.NET Core.Seril…
MFC和QT是C++中常见的GUI框架,而WinForm和WPF是C#中常用的框架,不过我们一般很少叫WinForm框架,可能直接叫图形控件类库更多点.反正只是个称呼罢了,爱咋叫就咋叫.另外WinForm与WPF(即Windows Form与Windows Presentation Foundation,用于windows的上的桌面应用开发)都只是提供了一堆GUI类库,而MFC与QT除了一堆GUI类库外还提供了其他很多类.功能更强大.       应该说从符合我们思维习惯的角度来说WinForm…
MFC和QT是C++中常见的GUI框架,而WinForm和WPF是C#中常用的框架,不过我们一般很少叫WinForm框架,可能直接叫图形控件类库更多点.反正只是个称呼罢了,爱咋叫就咋叫.另外WinForm与WPF(即Windows Form与Windows Presentation Foundation,用于windows的上的桌面应用开发)都只是提供了一堆GUI类库,而MFC与QT除了一堆GUI类库外还提供了其他很多类.功能更强大.       应该说从符合我们思维习惯的角度来说WinForm…
WTL都算不上什么Framework,就是利用泛型特性对Win API做了层封装,设计思路也没摆脱MFC的影响,实际上用泛型做UI Framework也只能算是一次行为艺术,这个思路下继续发展就会变得没法用了,比如 代码过于复杂,编译太慢,出错不好调试等问题难以解决.而且封装得也不完全,还是随处可见 HWND HDC之类的东西.用途主要是写一些很小的程序,或者作为其他UI框架的后端实现部分,比如我写过一个小框架用来做安装卸载程序,非常小,其中创建管理窗口部分是用WTL的. MFC是更高级点的Wi…
1.简介 1/ 什么是WPF WPF,Windows Presentation Foundation也,译过来就是"Windows呈现基础",你看它的目的非常明确,就是用来把数据"显示"给用户看的(说白了就是用来做UI的).如果只是给用户显示几串文本.两三张图片或者几个表格那WPF就太糗了,幸乎,WPF可不是这等素食动物--大家都见过Flash动画吧,WPF的显示能力丝毫不亚于Flash以及Flash的同门师弟Flex+AIR(某建筑公司产品). 2/ 为什么会有W…
winform 当前的屏幕除任务栏外的工作域大小     this.Width = System.Windows.Forms.Screen.PrimaryScreen.WorkingArea.Width;     this.Height = System.Windows.Forms.Screen.PrimaryScreen.WorkingArea.Height; 当前的屏幕包括任务栏的工作域大小 this.Width=System.Windows.Forms.Screen.PrimaryScre…
1.Winfrom国际化处理方式 ==> Winform中国际化支持可将UI页面和.cs文件分开处理 处理窗体方式如下:1.选择Form窗体设置其--Language(默认中文--Default).Localizable(true)2.选择具体控件-->设置Text属性(重复1.2.操作即可支持国际化,会自动生成对应的资源文件) 处理.cs文件如下:1.选择项目添加资源文件(新建项-->常规-->资源文件,可多个),实际使用如下: MessageBox.Show("Tes…
简介 一.   WPF产生的背景 因为人们的生活水平不断提前,审美观也随着提升,而软件的应用发展水平目前无法赶上大家的审美观和使用要求:比如:像电影中的软件能够方便的使用,而且有动态的效果同时附加形象的声音:而且采用GDI/GDI+开发炫一点的产品,成本很高,为了解决此问题,微软推出了一套解决方案WPF:WPF是基于Directx上开发的,使用的图形是矢量图,所以达到分辨率无关: 二.   概念 Windows Presentation Foundation (WPF) 是一种 UI 框架,可创…
一.详细描述 QWidget类是所有用户界面对象的基类.通俗的来讲,Qt基本上所有的UI类都是由QWidget继承出来的,而QWidget继承于QObject,  大家可以查阅Qt source 即可发现一些微妙的写法,如这篇文章有详细介绍:Qt 库对象数据的声明和使用. 窗口层次 窗口部件是用户界面的一个原子:它从窗口系统接收鼠标.键盘和其它事件,并且在屏幕上绘制自己的表现.每一个窗口部件都是矩形,并且它们按Z轴顺序排列的.一个窗口部件可以被它的父窗口部件或者它前面的窗口部件盖住一部分. QD…
(1):一些发布方式 ClickOnce是什么玩意儿,这个问题嘛,在21世纪的互联网严重发达的时代,估计也没有必要大费奏章去介绍了,弄不好的话,还有抄袭之嫌.因此,有关ClickOnce的介绍,各位朋友可以直接查找MSDN文档,或者看下面这里,这是百度百科上的,其实也是Ctrl + C版本.http://baike.baidu.com/view/1390498.htm 如果你对这些理论的东西不感兴趣,没关系,上面所提及的内容你完全可以无视之.我们只要知道,ClickOnce是一种应用程序部署方式…
利用午休时间继续把过去写的一些代码翻出来说一说,文章可能写的比较简略,但是我会努力把核心意思表达清楚,具体代码可直接访问 Github 获取. Github 地址:https://github.com/iccb1013/Sheng.Winform.Controls.Controller 这些代码是针对 WinForm 写的,但稍加改动即可应用于 WPF 开发中. 提到控制器,我们可能会首先想到流行的 MVC 开发中的控制器 Controller.对于 MVC 开发来说,我们把工程结构划分为 模型…
Winform // <summary> /// 复制或剪切文件至剪贴板(方法) /// </summary> /// <param name="files">需要添加到剪切板的文件路径数组</param> /// <param name="cut">是否剪切true为剪切,false为复制</param> public static void CopyToClipboard(string[]…
最近写了个小程序,用于将固态硬盘的写入量等信息显示在任务栏,最开始使用Windows API也可以实现,但是当任务栏托盘增加的时候,会被遮盖,最终采用了DeskBand来实现,填了很多坑. 参考的GitHub地址:https://github.com/dsafa/CSDeskBand DeskBand相关代码如下: COLORREF: // This code snippet was used by SharpShell. // using System.Drawing; using Syste…
国内社区没有,顺手转.WinForm: https://github.com/IgnaceMaes/MaterialSkin演示:https://www.youtube.com/watch?v=A8osVM_SXlg WPF:  https://github.com/ButchersBoy/MaterialDesignInXamlToolkit 值得一提的是,WPF 版本的不与 MahApps.Metro (https://github.com/MahApps/MahApps.Metro) 冲突…
很多时候,我们要实现Winform异步操作,你可以用传统的方法,但个人感觉代码不好理解,而且使用真有点不舒服.也可以用Task来实现,Task(.net4.0新添加的对象)其实就是对线程池线程的一个封装,里面功能比较多,也比较好操作,其他的不多讲,今天只讲异步操作,举个简单的例子吧: 先上个图:单击Go按钮,数字自动增加,比较简单.        直接上代码: public partial class Form1 : Form { private CancellationTokenSource…
WinForm 窗体显示位置 窗体显示的位置首先由窗体的StartPosition决定,FormStartPosition这个枚举值由如下几种情况 // 摘要: // 窗体的位置由 System.Windows.Forms.Control.Location 属性确定. Manual = , // // 摘要: // 窗体在当前显示窗口中居中,其尺寸在窗体大小中指定. CenterScreen = , // // 摘要: // 窗体定位在 Windows 默认位置,其尺寸在窗体大小中指定. Win…
WPF实现起来非常现代化,可以参考 https://www.cnblogs.com/yang-fei/p/4854460.html winform主要说一下实现过程和注意点,实现参考AutoUpdater.NET   https://github.com/ravibpatel/AutoUpdater.NET 1.首先建立全局资源,命名严格依据C# CultureInfo 规范,如下图 注意:新建立的全局资源需要手动拖到Properties下 全局的语言资源方法使用如下 语言使用的系统识别的 定义…
大家好, 我是等天黑, 今天给大家介绍一个功能完善, 性能强悍的图表组件库 ScottPlot, 当我第一次在 github 上看到这个库, 我看不懂,但我大受震撼, 这么好的项目当然要分享出来了. https://github.com/ScottPlot/ScottPlot ScottPlot 是一个 .NET 图表组件, 主要有以下特点: 适用范围广:同时适用于 WinForms, WPF, Avalonia, Console, 支持 .NET Framework 4.6.1 及以上, NE…
在Qt中提供了c++的扩展,提供了一种元对象系统的机制,(meta-object-system)的机制.其中包含了信号与槽的内部机制,能够访问到QObject子类的元对象信息的功能. Q_OBJECT 宏声明了在每一个QObject子类中必须首选的内省函数:metaObject(),tr(),qt_metacall()以及其他一些函数 Qt的moc工具生成了用于Q_OBJECT声明的所有函数和所有信号的实现 同时也提供了connect()和disconnect()这样的内省函数 Qt 不使用标准…
一.遇到问题        在Android机上使用QT进行图像处理程序设计的时候,遇到的一个比较明显的问题就是图片采集的问题----摄像头获得是实时的视频,如果我们想从中动态地截获图片,并且转换成Mat的格式,那么仅仅是静态的imagecapturee就无法完成,必须要依靠VideoProbe机制. 二.基本情况 我们参考QT的相关文档: QVideoProbe class允许你监控正在播放或者记录的视频 它的头文件 #include <QVideoProbe>qmake:    QT +=…
MFC.ATL和CLR是VC2005内置的3大库,涵盖了windows的各种开发方法和开发应用.当然关于 C++ 开发的库不止这3个,不过这3个是微软推荐.从编程所处层次而言,WIN32为最底层,其次是MFC.然后是CLR. WIN32 winAPI MFC MFC类库 CLR .net库 1. WIN32常规就是不用MFC,使用API函数编的程序. 2. MFC库有很多年的历史了,MFC是基于Windows API 的简单封装.其核心架构基于"Document/View"架构(20年…
新建项目->MFC模板->MFC应用程序->应用程序类型:基于对话框->...OK 解决方案资源管理器->资源文件->xxx.rc->进入:资源视图->Dialog->IDD_DEMO_DIALOG->打开工具箱(在侧面找) //0.准备 删除默认控件:ctrl+A,fn+delete: 修改名称 属性 属性 captain 点击触发事件 属性 控件事件 BN_CLICKED :右键 添加事件处理程序:双击进入编辑 插入窗口 右键 添加类 插入工…
新建项目->MFC模板->MFC应用程序->应用程序类型:单个文档:项目样式:MFC 标准->下一步...OK 此时点击运行,可直接弹出窗口. 调整 视图->类视图: ·CAboutDlg,帮助选卡->关于对话框 ·CMainFrame,框架类,相框,PreCreateWindow可修改窗口外观,光标,图标:Create注册,调用OnCreate产生窗口: ·CMFCTestApp,InitInstance入口 ·CMFCTestDoc,数据的存储和加载 ·CMFCTe…