ps相当于sdk吗

ps相当于sdk吗,第1张

您好,PS和SDK之间的区别在于,PS是Photoshop的简称,它是一款专业的图像处理软件,它拥有强大的图像处理功能,可以帮助用户编辑、处理和创建图像。而SDK是Software Development Kit的简称,它是一种软件开发工具,它可以帮助开发者更快更好地开发软件,它可以提供更多的编程语言和更多的编程框架,以及更多的API,以便开发者更好地实现软件的功能。总之,PS和SDK之间最大的区别在于,PS是一款专业的图像处理软件,而SDK是一种软件开发工具,它可以帮助开发者更快更好地开发软件。

因此不会对一些基础的知识作过多的讲解。如果大家有需要,我在就某些细节作进一步的解释。编写Windows下面的GUI程序,比较有影响力的就是MS的Visual Studio系列和Borland的BCB系列。BCB需要在程序发布的时候,多带一些borland提供的库,比较的麻烦。所以我很少用。如果用VS系列来编写GUI程序,主要有两个方式,第一就是用微软提供的MFC来作,第二就是用纯的Win32 SDK来编写GUI程序。众所周知的原因,MFC对Win32 SDK的包装比较的失败,不如BCB那样的流畅,有时候你很难在程序中发挥自己的思路,因此,我一般就是用纯的Win32 SDK来编写GUI程序,而不用晦涩的MFC,因为用MFC,你不仅仅要知道Win32 SDK,还需要查询MFC的一些技巧,实在得不偿失。用Win32 SDK编写GUI的难处在于,有时候你需要为了一个简单的事情而查询很多的资料与SDK文档。但是你得到的却是对Windows系统的透彻理解和程序运行的高效,轻量化。因为用Win32 SDK需要的库都是内含在每一个Windows系统中的。理论上来说,只要是Windows系统,你的程序就可以正确无误的运行。下面就我最近编写Windows GUI程序的碰到的一些问题一一说明。首先,看一下程序的最终运行效果图(我的编译器是VC6): 1 用VC6的Win32程序搭好框架之后,就添加自己的模式对话框,碰到的第一个问题就是如何设置Radio控件(有的中文书翻译为 单选按钮)的初始状态和查询最终的结果。经过一番努力查询Win32 SDK之后,标准答案如下:设置Radio的初始状态:BOOL CheckDlgButton(HWNDhDlg,int nlDButton,UINT uCheck);获得Radio控件的最终状态:UINT IsDlgButtonChecked(HWND hDlg,Int nlDBUtton);2 如何处理slider control(中文叫做滑竿控件)的相关事件。slider control,其实和上面的那个简单的radio control还是有本质的区别的。radio control是内含在windows的一般库里面的。不需要特别的库的支持,而slider control(英文也叫track bar)是需要COMCTL32lib的支持,要用这个slider control,你需要作三个动作。a 在源文件里面加入COMCTL32lib的引用。b 在头文件里面加入对commctlh的声明,一般加到stdafxh即可。#include // Add by liuzhi

c 在程序里面,需要加入使用common control的宏:InitCommonControls();否则,程序会闪一下就会退出的。因为程序没有申请到该有的资源。 加入对slider control的声明后。需要处理slider control的一些事件。这是需要特别注意的是,slider control不像radio control那样子直接用SDK API就可以处理了。需要特殊的消息机制,下面一一道来:21 获得控件的窗口句柄。slider control也是一个窗口,是对话框的子窗口,因此,要用GetDlgItem来实现:backlight_wnd = GetDlgItem(hDlg, IDC_SLIDER_BACKLIGHT);22 设置slider control的区间,是给slider control发TBM_SETRANGE消息,比如我设置0到100就是:SendMessage(backlight_wnd,TBM_SETRANGE, (WPARAM)1,(LPARAM)MAKELONG(0,100));23 设置滑块的初始位置是发送TBM_SETPOS消息来实现的: SendMessage(backlight_wnd,TBM_SETPOS, (WPARAM)1,(LPARAM)BacklightPercentage);

24 slider control和用户的交互,则是通过WM_HSCROLL消息来实现的,需要在WM_HSCROLL的响应函数里面发送TBM_GETPOS消息得到当前滑块的位置:BacklightPercentage = (unsigned char)SendMessage(backlight_wnd,TBM_GETPOS,0,0);25 旁边的一个当前刻度的数字的说明,需要先设定一个Static text文本控件,然后动态给该控件发送WM_SETTEXT消息来实现动态的更新数字:SendMessage(GetDlgItem(hDlg, IDC_STATIC_BACKLIGHT_VALUE), WM_SETTEXT, 0, LPARAM(szBacklightPercentage));最后面的那个参数,szBacklightPercentage是一个字符串。3 如何在对话框里面显示图标或者:如果程序没有,总是显得十分的死板,因此,在程序上面显示,图标是必要的美化程序的方法。网上关于程序显示的说明也很多。但是都比较的复杂。如果仅仅显示静态的图标,其实不用那么复杂的。31 需要好的icon素材。漂亮的icon素材就如程序的脸蛋一样。是必须的,要得到好的icon素材,第一是到网上“淘宝”。看看能不能找到你满意的。另外也有搜索自己电脑上漂亮图标的工具。因为windows自己也提供了很多的图标资源。这里推荐一个叫做 IconExtract 的小软件。大家可以网上下载,它可以很方便的把本地的图标都挖出来。一般情况下,够我们用的了。找好自己喜欢的图标之后,记得在资源里面的icon项目下引用进来。32 显示图标:如果不是动态显示,就只是简单的在对话框上面加picture控件,然后在属性里面指定icon的来源即可。4 如何响应电源插拔事件:在笔记本上面,ac电源插上和拔出的时候,会有背光亮度的改变,因此需要在知道这个电源来源改变的时候来重新获得当前背光,经查询,程序需要响应WM_POWERBROADCAST消息。如果wParam是PBT_APMPOWERSTATUSCHANGE,就需要重新获得当然背光: case WM_POWERBROADCAST:

if (wParam == PBT_APMPOWERSTATUSCHANGE) // Power source maybe changed, check the backlight again

wcexhIconSm = LoadIcon(wcexhInstance, (LPCTSTR)IDI_ICON_CONFIG2); // IDI_SMALL这样子修改之后,你会发现,程序运行的显示图标是改变了。但是程序exe的图标还是没有改变,这是因为exe和dll默认都显示id为最低的那个icon的图标。因此,在resourceh里面把自己希望显示的图标id和现有的程序图标id换一下就可以了。#define IDI_ICON_CONFIG2 107 // make sure the icon ID is lowest

好了。

以上就是关于ps相当于sdk吗全部的内容,包括:ps相当于sdk吗、如何用纯Win32 SDK编写GUI程序、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/10089323.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存