在VS2010中添加Flash控件
vc加入flash
关于VC中嵌入FLASH(2008-03-06 12:46:35)转载分类:visual c++标签:itVC中嵌入FLASH可以美观界面,下面记录方法:1.首先要添加控件project-->add to project-->components and controls找到文件夹Registered ActiveX Controls中的Shockwave Flash Object点insert这样控件就添加进来了同时系统会自动生成一个类与之对应2.建立一个FLASH控件的实例,命名为m_FlashPlayer(随意)3.使用成员函数LoadMovie和Play来导入并播放动画m_FlashPlayer.LoadMovie(0, strMovieUrl);该函数用来将动画导入程序中,strMovieUrl为要播放的flash路径,要用绝对路径。
m_FlashPlayer.Play();调用该函数开始播放动画。
在初始化对话框的函数里面加入这两个函数调用即可。
例如RECT rc;this->GetClientRect(&rc);m_FlashPlayer.MoveWindow( &rc, true );TCHAR strCurDrt[500];int nLen = ::GetCurrentDirectory(500,strCurDrt);if( strCurDrt[nLen]!='\\' ){strCurDrt[nLen++] = '\\';strCurDrt[nLen] = '\0';}CString strFileName = strCurDrt;strFileName += "startup.swf";m_FlashPlayer.LoadMovie(0, strFileName);m_FlashPlayer.Play();上面的代码可以放在某个按钮中也可以放在WM_INITDIALOG消息中至此,flash就嵌入到vc中了4.flash与vc间消息的交互flash与vc的交互是靠Fscommand来实现的举例来说,比如flash中某个按钮的动作是fscomman("username",username.text );当点击该按钮后,会触发vc中的函数:DLG类中flash控件IDC_SHOCKWAVEFLASH中的FsCommand消息,并将其中的2个参数分别传给LPCTSTR command, LPCTSTR args即点击按钮后,command=username,args=username.text,之后就可以对其进行处理了例如if( 0 == strcmp(command,"quit") ){MessageBox("您选择了退出!");CDialog::OnCancel();}if( 0 == strcmp(command,"username")){username=args;MessageBox(username);}if( 0 == strcmp(command,"password")){password=args;MessageBox(password);}VC中借助内嵌资源实现Flash动画播放2004-12-04 14:07作者:信息产业部电子第二十二研究所青出处:天极网责任编辑:方舟摘要:本文通过在VC中将外部swf格式文件内嵌为VC的内部资源,使其在程序运行过程中从资源动态释放到临时文件,从而实现VC对Flash动画的播放。
使用qt5VS2010设计插件的一般方法
使用qt5VS2010设计插件的一般方法环境:QT5.1VS2010为了方便VS中调试,需要将主程序和plugin的程序放在同一个解决方案中,否则无法单步调试。
步骤:1、建立plugin工程,该工程为qtlibrary工程,工程中包括一个interface.h的头文件,该头文件定义一个接口类,可以定义所以的纯虚函数,可以没有构造函数,但是为了释放内存,建议有一个虚的析构函数。
然后根据要求定义各个成员函数【虚函数】2、定义完所有的函数后需要用Q_DECLARE_INTERFACE宏定义来定义接口,Q_DECLARE_INTERFACE(testinterface , "mxq.testlib.testinterface/1.0")第一个参数为类名,第二个参数为标示码,自己定义。
3、在创建工程的时候会自动生成一个.h文件为libplugin_global.h【如果libplugin为工程名称】,在libplugin.h文件中设计插件的类,该类继承QObject和interface类。
4、libplugin类定义的时候需要注意添加宏:Q_OBJECT,Q_PLUGIN_METADATA,Q_INTERFACES三个宏。
其用户可以参考手册。
5、实现类成员函数。
编译ok。
源码如下:libplugin_global.h 是自动生成的,不需要进行改动,不做说明testinterface.h源码========================》#ifndef TESTINTERFACE_H#define TESTINTERFACE_H#include <QtPlugin>#include <QObject>#include <QString>class testinterface:public QObject{Q_OBJECTpublic:virtual ~testinterface(){};virtual QString getName() = 0;signals:void reqTest(quint16 value);};Q_DECLARE_INTERFACE(testinterface , "mxq.testlib.testinterface/1.0")#endiflibplugin.h源码========================》#ifndef LIBPLUGIN_H#define LIBPLUGIN_H#include <QObject>#include <QTimer>#include "testinterface.h"#include "libplugin_global.h"class LIBPLUGIN_EXPORT libplugin: public QObject , public testinterface{Q_OBJECTQ_PLUGIN_METADATA(IID "org.qt-project.Qt.QDummyPlugin" FILE "mxqtest.json")Q_INTERFACES(testinterface)public:libplugin();~libplugin();virtual QString getName();//signals://void reqTimeOut();//void reqTest(quint16 value);public slots:void respTimeOut();private:QTimer *pTimer;quint16 timeCount;};#endif // LIBPLUGIN_Hlibplugin.c源码========================》#include "libplugin.h"#include <QtDebug>#include <QString>#include <QtPlugin>libplugin::libplugin(){pTimer = NULL;pTimer = new QTimer();QObject::connect(pTimer , &QTimer::timeout , this , &libplugin::respTimeOut);pTimer->start(5000);timeCount = 0;}libplugin::~libplugin(){if (pTimer){pTimer->deleteLater();pTimer = NULL;}}QString libplugin::getName(){qDebug()<< "get name function input :" ;qDebug()<<"plugin name is \"libplugin\"";return "libplugin";}void libplugin::respTimeOut(){timeCount++;emit this->reqTest(timeCount);}创建测试主工程,该工程需要包含接口头文件interface.h。
C#2010 操作控件
C#2010 操作控件
在Visual Studio中,开发者可以创建一个基于Windows窗体应用程序的项目,然后即可在设计器中通过工具箱为窗体添加、删除、移动和对齐各种控件对象。
1.添加控件
添加控件就是将各种窗体控件添加到对话框、MDI或SDI中的过程。
在添加控件时,可以自Visual Studio的【工具箱】面板中选择窗体控件,然后将其拖拽至指定的窗体设计器中,从而完成控件的添加,如图8-2所示。
图8-2 为窗体添加控件
2.删除控件
删除控件操作可以将窗体中已有的控件清除,同时移除与该控件相关的代码。
在删除控件时,可以在窗体设计的窗口中选择指定的控件,然后执行【编辑】|【删除】命令,或直接按Delete功能键,即可完成删除,如图8-3所示。
图8-3 删除窗体控件
3.移动和对齐控件
在编辑窗体时,开发者可以直接选中窗体控件,然后再使用鼠标对这些窗体控件进行拖拽操作。
当两个控件的横坐标或纵坐标保持一致时,Visual Studio会自动显示参考线以示这些控件可被自动对齐,如图8-4所示。
图8-4 移动控件并对齐
在移动窗体控件时,开发者还可以按住Ctrl功能键,同时选择多个窗体控件,对这些窗体控件一并进行移动和对齐操作。
4.自动对齐控件
在移动控件时,开发者除了可以拖拽窗体控件外,还可以使用Ctrl功能键连续选择多个窗体控件,然后执行【格式】|【对齐】命令,在弹出的子菜单中选择对齐方式,对窗体控件进行自动对齐操作,如图8-5所示。
图8-5 自动对齐控件。
VS中添加ActiveX控件
MFC在VS2010的VC环境下用类向导添加完已经注册到系统中的ActiveX控件生成其包装类
在窗体设计器上右键插入对应ActiveX控件,右键添加变量,关联到VC生成的包装类
假如我取名为m_player
然后用m_player.xxx来访问它的接口函数。
xxx就是函数名
这个我试过可以,现在的问题是不想把控件停靠在对话框上,能否用类向导生成接口类后,直接调用接口函数?
你可以把对话框上的控件设置为隐藏,不显示。
这样运行时不会显示。
如果要让它在设计时都不显示的话,可以动态创建。
包装类里生成了Create函数,实例化包装类对象后,比如包装类名为Mp3Player
在代码里实例化Mp3Player m_player;
然后调用Create函数
m_player.Create(....)
第四个参数是个矩形,长宽设置为0.
这样的话动态创建的控件不会出现在对话框上。
不管怎样,必须要有一个包装类对象,才能用对象名.方法来访问它的接口函数
采用第二种很好的解决了我的问题,谢谢,以上两种方法都可行,根据需求选择吧。
WPF中播放Flash动画
WPF中播放Flash动画1、首先在VS2010中建立项目。
打开VS2010后选择“文件”-“新建”-“项目”,选择“WPF应用程序”,如下图所示,项目名称为WpfFlashPlayer。
2、选中项目解决方案名称,点右键,选择“添加”—“新建项目”,出现下图窗口。
选择“Windows窗体控件库”,名称定为WindowsFormsFlashControlLibrary,点“确定”键。
3、在工具箱中选择Shockwave Flash Object,如果工具箱中没有出现,只要在工具箱中点右键选择“选择项”,就会出现图1-99,选择其中的“Shockwave Flash Object”后点“确定”键。
这时工具箱中会增加Shockwave Flash Object控件,将其拖入设计窗口。
图1-994、开始执行程序,在项目“WindowsFormsFlashControlLibrary”的“Bin\Debug”文件夹中自动生成:AxInterop.ShockwaveFlashObjects.dll和Interop.ShockwaveFlashObjects.dll这2个文件是Windows系统下Flash Player播放器控件在WPF中应用的接口,有了这两个文件,他人就无需做上面的重复设计了,可以在下面使用。
5、然后在Expression Blend 4中建立1个WPF项目,如WpfFlashPlayer。
首先在项目的“引用”中添加下面2个文件的引用(可到上面说的文件夹中找此文件):AxInterop.ShockwaveFlashObjects.dllInterop.ShockwaveFlashObjects.dll并且在.xaml.cs文件前添加命名空间:using AxShockwaveFlashObjects;using ShockwaveFlashObjects;这时,项目中可以使用Flash Player的类AxShockwaveFlash创建播放器对象,此对象在WPF窗口的显示同样需要借助于接口控件WindowsFormsHost,这样需要在项目的“引用”中添加如下文件:System.Windows.Forms.dll(C:\WINDOWS\\Framework\v4.0.30319)WindowsFormsIntegration.dll(C:\WINDOWS\\Framework\v4.0.30319\WPF)前1个引用的添加将保证AxShockwaveFlash的正常应用。
VisualC++2010MFCActiveX控件小结
VisualC++2010MFCActiveX控件小结前言:参照《VC++深入详解》--孙鑫第18章ActiveX控件,书中编译环境为VC6.0一、ActiveX控件ActiveX控件是基于组件对象模型COM--Components Object Modem的可重用软件组件,旨在用于普通的ActiveX控件容器和Internet上的网页,这里介绍用MFC创建ActiveX控件。
一个典型的ActiveX控件,具有方法、属性、事件这三种特性。
二、ActiveX控件的测试与注册1、使用ActiveX控件测试容器对控件进行测试对于VC6.0,安装Common\Tools目录下的TSTCON32.EXE即可使用。
而vs2010中的TSTCON( ActiveX Control Test Container )工具非自动安装,而是作为一个例程提供。
所以应找到该例程,并编译:如vs2010安装在默认路径则1, 进入:C:\Program Files\Microsoft Visual Studio 10.0\Samples\1033,可找到VC2010Samples.zip文件,2, 将其解决到同一个文件夹,解压后将出现一个C++子文件夹。
3, TstCon例程在:C:\Program Files\Microsoft Visual Studio 10.0\Samples\1033\C++\MFC\ole\TstCon,双击其中的.sln文件启动工程,直接编译,4, 编译后在Debug子文件夹中将出现一个TstCon.exe文件,将其复制到:C:\Program Files\Microsoft Visual Studio 10.0\Common7\Tools文件夹。
5, 在vs2010中的Tools菜单点击“External T ools...”,出现如下对话框,点击“Add”添加一项工具。
6, 新工具项的"Title"为:ActiveX Control Test Container,"Command" 为:C:\Program Files\Microsoft Visual Studio 10.0\Common7\Tools \TstCon.exe。
VS2010C#创建ActiveX控件
VS2010C#创建ActiveX控件VS2010 C#创建ActiveX控件1、File-->New-->Project,弹出 New Project窗口;2、在左边的 Installed Templates -->Visual C#-->Windows中,选择Class Library,输入名字(name):HelloWorld,选择项目保存路径(Location):F:\donetProject, Solution: Create new solution ,如下图:图 13、删除自动创建的Class1.cs文件,然后在HelloWorld上右键->添加->新建项,在弹出的窗口中选择“用户控件”,名称为Demo,此时会出现一个类似于winform设计界面,我们在上面从工具箱中拖动一个Label在上面,并设定Label的Text为"HelloWorld"。
Add New Item:(Visual C# Items – User Control),在name 中输入Demo4、画ActiveX界面:5、在菜单中:Project HelloWorld Properties,Application页面,点击Assembly Information6、在HelloWorld(用户控件)项目上点击右键,选择属性,将打开项目属性面板,选择应用程序标签页,点击“程序集信息”按钮,在弹出的窗口中勾选“使程序集COM可见” (Make assembly COM-Visible) ;7、切换到生成(Build)标签页,然后勾选“为Com互操作注册”(Register for COM interop),在该页面的最上面,有一个配置选项,切换到realse,并再次勾选“为Com互操作注册” (Register for COM interop)。
这样无论是在debug还是在release状态下,都可以把用户控件当做com接口使用。
vs2010安装教程
vs2010安装教程Visual Studio 2010 安装教程1. 首先,确保你的计算机满足Visual Studio 2010 的系统要求。
你可以在微软官方网站上找到相关信息。
2. 在微软官方网站上下载 Visual Studio 2010 的安装文件。
你可以选择在线安装程序或离线安装程序,根据你的网络状况和个人喜好进行选择。
3. 双击下载好的安装文件,开始安装程序。
如果你选择的是离线安装程序,它会解压安装文件到你指定的位置。
4. 安装程序会进行一些初始化工作,稍等片刻。
5. 接下来,你将看到Visual Studio 2010 安装向导的欢迎界面。
点击 "下一步" 继续。
6. 阅读并接受许可协议。
如果你同意,请勾选 "我接受许可协议",然后点击 "下一步"。
7. 下一个界面是选择安装类型。
你可以选择完整安装或自定义安装。
完整安装将安装所有可用的组件,而自定义安装允许你选择你想要的组件。
选择适合你需求的安装类型后,点击 "下一步"。
8. 指定安装位置,或者使用默认位置。
点击 "下一步" 继续。
9. 在接下来的界面中,你可以选择将 Visual Studio 2010 的快捷方式添加到开始菜单、桌面或快速启动栏。
选择你想要的选项后,点击 "下一步"。
10. 如果你希望参加用户体验计划,选择 "是,我希望参加用户体验计划",然后点击 "下一步"。
11. 点击 "安装" 开始安装 Visual Studio 2010。
安装过程可能需要一些时间,取决于你的计算机性能。
12. 安装完成后,你将看到一个安装成功的界面。
点击 "完成" 关闭安装程序。
现在,你已经成功安装了 Visual Studio 2010。
Word2010中插入flash动画的方法
Word2010中插入flash动画的方法Liuxinbo2012-7-25有时需要在word文档中插入flash动画,增强描述的动感,可以使人印象更鲜明、更深刻。
网上查到的flash插入方法一般都是word2000下的,但是word2010界面已经有了很大的变化,操作方法也有了很大的不同,经过一番摸索,了解到了这个过程,希望对有用得着的同事有所帮助,下面就描述如何在word2010文档中中插入flash。
1.首先准备flash文件(例如:flash.swf).2.要安装好flash播放器(支持ie下播放,现在一般是Adobe flash player).检查一下flash.swf能否在ie下正确播放。
3.创建一个word文档,在“插入->对象”中选择“由文件创建“,同时选择“显示为图标”,点击”浏览”选择flash.swf文件。
这个时候文档会出现一个方框。
如下图b图a图b4、在框框中点击鼠标右键:如下图,选择属性:图c5、修改属性值“EmbedMovie”为TRUE,“Playing”为True.“Movie”中填入包括绝对路径的flash文件名:例如”C:\Users\gosun\Desktop\flash1.swf”(图d)图d6、在菜单项中点击“开发工具”,如果菜单上没有“开发工具”则按下面方面打开“开发工具”面板:图f图g7、在“开发工具”中点击“宏”按钮:输入一个宏名,例如lxb,宏的位置选择你刚才创建的word文档,点击创建(图H)。
然后关闭弹出的窗口,再回到“开发工具”点击“宏”按钮,点击“运行”就可以了(图j),再点击运行就可以了。
图h图J图k。
C++ Builder 2010 安装ShockWave(即flash) 控件
C++ Builder 2010 安装ShockWave(即flash)控件罗树鹏2009-10-12安装了c++builder 2010(以下叫CB2010),发现在CB2010安装组件和BCB6完全不同。
今天就将我如何在CB2010下安装Shockwave组件的方法写出来,希望对大家有个帮助。
对于这类组件的安装比较麻烦(相比其它两类组件来说)。
首先创建一个BPK,步骤是选择菜单中的“Component”,然后选择”I mport Component”在弹出的Import Component界面中选择“Import ActiveX Control”点击“Next”,进入下一步。
选择需要导入的ActiveX组件,点击“Next”,进入下一步。
选择这个组件要放入的Palette Page,然后点击“Next”,进入下一步。
在这里我选择的是创建新的Package,也可以选择其它选项。
点击“Next”,进入下一步。
选择创建的包的路径和名称,填写描述,点击“Finish”,后,IDE会自动编译下这个包。
但是会出现类似于下面的错误。
BuildChecking project dependencies...Compiling ShockWave.cbproj (Debug configuration)[ILINK32 Error] Error: Unresolved external '__stdcallShockwaveflashobjects_tlb::IDispatchEx::GetDispID(wchar_t *, unsigned long, long *)' referenced from F:\个人重要资料(勿删)\ADMINISTRATOR\桌面\DEBUG\SHOCKWA VEFLASHOBJECTS_OCX.OBJ[ILINK32 Error] Error: Unresolved external '__stdcallShockwaveflashobjects_tlb::IDispatchEx::RemoteInvokeEx(long, unsigned long, unsigned long, tagDISPPARAMS *, tagV ARIANT *, tagEXCEPINFO *,Shockwaveflashobjects_tlb::IServiceProvider *, unsigned int, unsigned int *, tagV ARIANT *)' referenced from F:\个人重要资料(勿删)\ADMINISTRATOR\桌面\DEBUG\SHOCKWA VEFLASHOBJECTS_OCX.OBJ[ILINK32 Error] Error: Unresolved external '__stdcallShockwaveflashobjects_tlb::IDispatchEx::DeleteMemberByName(wchar_t *, unsigned long)' referenced from F:\个人重要资料(勿删)\ADMINISTRATOR\桌面\DEBUG\SHOCKWA VEFLASHOBJECTS_OCX.OBJ[ILINK32 Error] Error: Unresolved external '__stdcallShockwaveflashobjects_tlb::IDispatchEx::DeleteMemberByDispID(long)' referenced from F:\个人重要资料(勿删)\ADMINISTRATOR\桌面\DEBUG\SHOCKWA VEFLASHOBJECTS_OCX.OBJ[ILINK32 Error] Error: Unresolved external '__stdcallShockwaveflashobjects_tlb::IDispatchEx::GetMemberProperties(long, unsigned long, unsigned long *)' referenced from F:\个人重要资料(勿删)\ADMINISTRATOR\桌面\DEBUG\SHOCKWA VEFLASHOBJECTS_OCX.OBJ[ILINK32 Error] Error: Unresolved external '__stdcallShockwaveflashobjects_tlb::IDispatchEx::GetMemberName(long, wchar_t * *)' referenced from F:\个人重要资料(勿删)\ADMINISTRATOR\桌面\DEBUG\SHOCKWA VEFLASHOBJECTS_OCX.OBJ[ILINK32 Error] Error: Unresolved external '__stdcallShockwaveflashobjects_tlb::IDispatchEx::GetNextDispID(unsigned long, long, long *)' referenced from F:\个人重要资料(勿删)\ADMINISTRATOR\桌面\DEBUG\SHOCKWA VEFLASHOBJECTS_OCX.OBJ[ILINK32 Error] Error: Unresolved external '__stdcallShockwaveflashobjects_tlb::IDispatchEx::GetNameSpaceParent(IUnknown * *)' referenced from F:\个人重要资料(勿删)\ADMINISTRATOR\桌面\DEBUG\SHOCKWA VEFLASHOBJECTS_OCX.OBJ[ILINK32 Error] Error: Unable to perform linkFailedElapsed time: 00:00:03.7这个问题的解决方法是把这几个出错的函数(应该是8个)声明成内联函数,即加inline关键字或者把实现部分回到头文件中。
在office中如何插入Flash
在Excel中如何插入Flash
1.在“控件工具箱”中点击“其他控件”,选择列表中的“Shockwave Flash Object”。
2.右键单击插入进来的Flash播放控件,选择“属性”。
(1)“Movie”(电影)项:在其右侧文本框中输入要插入
swf动画的完整路径及文件名(如果swf与Excel文件处
于同一目录中,也可以只输入swf文件名)。
(2)“Playing”(播放)项:用来控制是否播放swf文件,
设置为true。
(3)“Loop”(循环)项:是否循环播放,根据你的课件
的具体情况而定。
(4)“Menu”(菜单)项:在播放中是否显示flash菜单,
若设置为Fales,则在播放中右击控件区的画面,出现
否则,若设置为:true,则出现:
一般设置为Fales。
(5)“Loop”(循环)项:是否循环播放,默认为true。
(6)“EmbedMovie”(嵌入影片)项:是否嵌入影片。
True为嵌入方式,false为链接方式。
(嵌入方式的好处是,影片被保存在文件中,当文件位置移动后,影片照样可以播放不存在链接丢失的现象,但体积较大)。
MFCActiveX控件的创建与使用(VS2010)
MFCActiveX控件的创建与使⽤(VS2010)1.ActiveX的基本概念ActiveX控件可以看作是⼀个极⼩的服务器应⽤程序,它不能独⽴运⾏,必须嵌⼊到某个容器程序中,与该容器⼀起运⾏。
这个容器包括WEB⽹页,应⽤程序窗体等。
ActiveX控件的后缀名是OCX或者DLL。
⼀般是以OCX和动态库共存的形式打包成cab或者exe的⽂件放在服务器上,客户端下载后运⾏安装cab或exe解压成OCX和动态库共存的⽂件,然后注册ocx⽂件。
ActiveX控件是基于com标准,使得软件部件在⽹络环境中进⾏交互的技术集。
它与具体的编程语⾔⽆关。
作为针对Internet应⽤开发的技术,ActiveX被⼴泛应⽤于WEB服务器以及客户端的各个⽅⾯。
同时,ActiveX技术也被⽤于⽅便地创建普通的桌⾯应⽤程序,此外ActiveX⼀般具有界⾯。
2.三个概念:ActiveX、OLE和COM从时间的⾓度讲,OLE是最早出现的,然后是COM和 ActiveX;从体系结构⾓度讲,OLE和ActiveX是建⽴在COM之上的,所以COM是基础;单从名称⾓度讲,OLE、ActiveX是两个商标名称,⽽COM则是⼀个纯技术名词,这也是⼤家更多的听说ActiveX和OLE的原因。
COM是应OLE的需求⽽诞⽣的,所以虽然COM是OLE的基础,但OLE的产⽣却在COM之前。
COM的基本出发点是,让某个软件通过⼀个通⽤的机构为另⼀个软件提供服务。
ActiveX最核⼼的技术还是COM。
ActiveX和OLE的最⼤不同在于,OLE针对的是桌⾯上应⽤软件和⽂件之间的集成,⽽ ActiveX则以提供进⼀步的⽹络应⽤与⽤户交互为主。
COM对象可以⽤C++、Java和VB等任意⼀种语⾔编写,并可以⽤DLL或作为不同过程⼯作的执⾏⽂件的形式来实现。
使⽤COM对象的浏览器,⽆需关⼼对象是⽤什么语⾔写的,也⽆须关⼼它是以DLL还是以另外的过程来执⾏的。
从浏览器端看,⽆任何区别。
VisualStudio中添加控件
利用Visual Studio添加控件Visual Studio(与对Web开发的底层技术做了包装。
正如您在之前章节看到的,Web 开发要追溯到20世纪70年代中期的"终端-主机"时期。
只是,此刻终端变成了复杂的阅读器,计算平台变成了Web效劳器(或Web场),而且用户遍及全世界。
客户端阅读器与效劳器进行一次交互,客户端收到的只是效劳器状态的一个快照。
这是因为构建Web用户界面的标记语言是以非连接协议为基础的。
在Visual Studio中构建应用程序超级像是在开发桌面应用程序。
利用Visual Studio,开发者没必要花大量时刻录入ASP风格的代码。
"设计器"是以可视方式设计Web UI的理想工具。
为学习如何利用Visual Studio,下面咱们利用效劳器端控件来开发一个简单的页面。
该页面看起来与前面给出的例如页面差不多。
利用Visual Studio构建一个页面1.在Visual Studio中,新建一个"空Web应用程序"。
将该项目命名为ControlsORama,如以下图所示。
2.添加默许页面。
在项目节点上右击,依次选择"添加"-""|"新建项"命令。
在"添加新项"对话框列出的模板中,选择"Web窗体",将其命名为,并单击"确信"按钮。
Visual Studio会打开标记的编辑窗口。
单击编辑框口底部的"设计"选项卡,将当前视图切换至"设计"视图(见以下图)。
Visual Studio生成的页面包括一个HTML <div>标签。
在"设计器"中修改页面元素后,为查看Visual Studio生成的代码,能够单击设计窗口底部的"源"选项卡。
VS2010基本操作
步骤8: 设置好后,我们就可以看到效果了,现在运行下, 看看其效果,点击菜单上的启动调试按钮,也可以按F5。
调试按钮:
运行效果:
返回目录
现在只是一个显示,具体没有任何功能,要想有 功能就得在cs中编写,在这个PPT中展示还不会涉及 到,具体控件的使用将会在另外一个PPT中讲解。 VS的基本操作就是这样,更多的操作需要在实际 运用的过程中慢慢掌握。
步骤5: 点击下一步后,将接受条款一项打钩,继续下一步。 步骤6: 选择要安装的功能为自定义,因为有些功能我们用 不上,同时可以选择安装路径。
步骤7: 选择要安装的功能,如下图所示:
步骤8: 点击安装后,进入安装界面,这段时间会比较长。
步骤9: 安装好后,点击完成按钮,这样就可以使用VS2010 了。 步骤10: 打开VS2010,选择Visual C#开发设置,启动VS.
Visual Studio 2010基本操作
Visual Studio 2010简介 VS的安装 VS界面基本功能描述 VS创建工程 VS调试 课后习题
1.Visual Studio 2010简介
定义
Visual Studio是微软公司推出的开发环境。是目前 最流行的Windows平台应用程序开发环境。 Visual Studio 2010版本于2010年4月12日上市, 其集成开发环境(IDE)的界面被重新设计和组织,变得 更加简单明了。Visual Studio 2010同时带来了NET Framework 4.0,除了Microsoft SQL Server,它还支 持 IBM DB2和Oracle数据库。
返回目录
1.每位同学自行安装VS。
返回目录
4.VS界面基本功能描述
插入flash的方法
1、插入flash的方法
• ①、执行“视图→工具栏→控件工具箱”命令,展开“控 件工具箱”工具栏(如图K)。 ②单击工具栏上的“其他 控件”按钮,在弹出的下拉列表中,选 “ShockwaveFlashObject”选项,这时鼠标变成了细十字 线状,按住左键在工作区中拖拉出一个矩形框(此为后来 的播放窗口)。 ③将鼠标移至上述矩形框右下角成双向 拖拉箭头时,按住左键拖动,将矩形框调整至合适大小。 ④右击上述矩形框,在随后弹出的快捷菜单中,选“属性” 选项,打开“属性”对话框(如图L),在“Movie”选项 后面的方框中输入需要插入的Flash动画文件名及完整路 径,然后关闭“属性”窗口。 [注意]:为便于移动演示文 稿,最好将Flash动画文件与演示文稿保存在同一文件夹 中,这时,上述路径也可以使用相对路径。
• 在PPT中插入Flash动画方法二 将Flash生 成的. exe动画文件插入PPT ---先插入一图 片 ---该图片“动作设置”中的“单击鼠标” 选项中选择“运行程序”,并指定文件路 径和文件名 注意:用这个方法时,一定要 把在PPT“选项”设置中“常规”里的“宏 病毒防护”选去掉。不然的话,每次演 示都会弹出个警告框...
vs控件使用方法
vs控件使用方法
首先,需要在Visual Studio中安装所需的控件。
在“工具”菜单下选择“扩展和更新”,然后在“Visual Studio Marketplace”中搜索需要的控件,并安装。
2. 导入控件
在Visual Studio中,打开工具箱并选择所需控件。
右键单击工具箱并选择“选择项”,然后单击“COM组件”选项卡。
在这里,可以选择已安装的控件并将其添加到工具箱中。
3. 设置控件属性
在工具箱中选择控件后,可以在属性窗口中设置其属性。
这包括大小、位置、颜色和字体等。
4. 编写代码
在使用控件时,需要编写代码以处理与其交互的事件。
例如,单击按钮控件时会触发其“单击”事件,可以在代码中编写相应的处理程序来执行所需的操作。
5. 保存和调试
在完成控件的设置和代码编写后,可以保存并调试应用程序。
在调试期间,可以使用调试器来检查代码并解决任何错误。
完成后,可以将应用程序部署到生产环境中。
- 1 -。
VS中添加ActiveX控件
MFC在VS2010的VC环境下用类向导添加完已经注册到系统中的ActiveX控件生成其包装类
在窗体设计器上右键插入对应ActiveX控件,右键添加变量,关联到VC生成的包装类
假如我取名为m_player
然后用m_player.xxx来访问它的接口函数。
xxx就是函数名
这个我试过可以,现在的问题是不想把控件停靠在对话框上,能否用类向导生成接口类后,直接调用接口函数?
你可以把对话框上的控件设置为隐藏,不显示。
这样运行时不会显示。
如果要让它在设计时都不显示的话,可以动态创建。
包装类里生成了Create函数,实例化包装类对象后,比如包装类名为Mp3Player
在代码里实例化Mp3Player m_player;
然后调用Create函数
m_player.Create(....)
第四个参数是个矩形,长宽设置为0.
这样的话动态创建的控件不会出现在对话框上。
不管怎样,必须要有一个包装类对象,才能用对象名.方法来访问它的接口函数
采用第二种很好的解决了我的问题,谢谢,以上两种方法都可行,根据需求选择吧。
win7下VS2010 C# ActiveX控件制作 打包 测试
一、环境:操作系统:Win7开发工具:Visual Studio 2010.NET版本:4.0开发语言:C#下载makeCAB压缩包,这里面包含了制作数字签名和制作cab的几个exe程序保存路径:D:\makeCAB需要编辑的系统环境变量设置:(下面的系统变量)这样做是为了方便后面在cmd里调用。
二、编写ActiveX控件1、创建一个新的Windows窗体控件库2、重命名UserControl1.cs 为HelloDanielActiveX.cs3、拖1个GroupBox和2个Label控件到界面上4、为控件添加一个方法,用来设置Label中显示当前时间#region Javascript调用ActiveX的方法// 设置当前时间public void SetTime(string timeStr){bel2.Text = timeStr;}#endregion5、新建一个接口下面是这个接口的代码:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Runtime.InteropServices;namespace HelloDaniel{[ComImport, GuidAttribute("CB5BDC81-93C1-11CF-8F20-00805F2CD064")] [InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)]public interface IObjectSafety{[PreserveSig]int GetInterfaceSafetyOptions(ref Guid riid, [MarshalAs(UnmanagedType.U4)] ref int pdwSupportedOptions,[MarshalAs(UnmanagedType.U4)] ref int pdwEnabledOptions);[PreserveSig()]int SetInterfaceSafetyOptions(ref Guid riid, [MarshalAs(UnmanagedType.U4)] int dwOptionSetMask,[MarshalAs(UnmanagedType.U4)] int dwEnabledOptions);}}6、在控件中实现这个接口关于实现这个接口,篇幅较长,可以在这篇文章找到:/default.aspx/Interfaces/IObjectSafety.html7、为控件添加Guid、ProgId和ComVisible属性Guid的获得应该是这样的:点击复制,然后将你得到的Guid号Copy下,粘贴到下面代码里面。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、准备工作
第一步:下载并安装Adobe Flash Player。
从官方网站(/cn/flashplayer/)上下载最新的Flash Player(大约为2.66M),并安装。
对于Windows 32位系统,其默认安装目录为:C:\WINDOWS\system32\Macromed\Flash\;对于64位系统,为:C:\Windows\SysWOW64\Macromed\Flash。
Flash控件的大版本号用数字表示,如9,10,11等,小版本号用小写字母表示,如a, b, c, d, e。
如我安装的版本为:Flash10l.ocx。
第二步:通过regsvr32.exe注册flash控件Flash10l.ocx。
从开始菜单中打开运行对话框,并输入:regsvr32 C:\Windows\SysWOW64\Macromed\Flash\Flash10l.ocx 注册该控件(注册之后就可以在项目中进行控件添加了),如果注册成功,有如下提示:
注销控件的命令行为regsvr32 /u C:\Windows\SysWOW64\Macromed\Flash\Flash10l.ocx。
二、新建MFC项目,添加Flash控件
第一步:建立基于对话框的MFC程序。
打开Visual Studio 2010,新建项目,选择“MFC应用程序”,并将其命名为MFCFlash。
在接下来的选型设置中,选择应用程序类型为“基于对话框”,其他可按默认设置。
项目建成后,程序默认添加了MFCFlash和MFCFlashDlg的头文件和实现文件,截图如下:
第二步:添加Shockwave Flash Object类。
VC++ 6.0中,可以使用ClassWizard添加ActiveX控件,而VS2005以后的版本没有。
如果要添加ActiveX 对应的类,可以“项目”→“添加类”→“ActiveX控件中的MFC类”,打开“从ActiveX控件添加类向导”对话框。
选择从“文件”添加类,找到Flash控件的安装位置,即可添加Shockwave Flash控件,接口选择“IShockwaveFlash”,以生成CShockwaveFlash类(类的名称可以修改)。
插入后,VC会自动把这个类加入工程里面。
第三步:添加Shockwave Flash Object控件。
在资源视图里找到“Dialog”,并选择其中的IDD_MFCFLASH_DIALOG,在其上点右键,选择“插入ActiveX
控件”,从弹出的列表中选择“Shockwave Flash Object”。
使用BUTTON、EDIT等其它Windows控件一样,我们可以使用这个类的成员函数来操纵这个对象,来进行Flash动画的控制以及和自己的程序进行交互等操作了。
在Flash控件上点右键,然后选择“添加变量”,设定“变量名”为:m_FlashPlayer。
可再次在Flash控件上点右键,然后选择“属性”,将其ID改
为IDC_SHOCKWAVEFLASH。
第四步:使用成员函数LoadMovie和Play来导入并播放动画。
在MFCFlashDlg.cpp文件中,找到CMFCFlashDlg::OnInitDialog()函数,在“return TRUE”之前添加代码:CString str = _T("E:\\VS\\Flash\\media\\test.swf");
m_FlashPlayer.LoadMovie (0, str);
m_FlashPlayer. Play ();
其中m_FlashPlayer.LoadMovie(0, str)用来将动画导入程序中,str为要播放的flash路径,要用绝对路径(注意路径用双斜杠“\\”隔开); m_FlashPlayer. Play ()开始播放动画。
现在运行程序,就可以看到flash嵌入到程序里面了。
还有几个常用的函数可以用来控制动画的播放,如GotoFrame(long FrameNum)可以转到FrameNum侦播放(侦数从0开始),StopPlay()可以停止播放。
,
还有很多,可以自己试试。
下图是我做的一个飞行仪表,界面比较丑陋,凑合看吧^_^
三、实现MFC与Flash的通信
1、Flash通过FSCommand消息调用MFC
第一步:添加消息处理函数。
在Flash控件上点右键,然后选择“添加事件处理程序”,在类列表选择“CMFCFlashDlg”,消息类型选择“FSCommand”,则函数处理程序名称自动为“FSCommandShockwaveflash”。
它的形式大概是这样子的:void CMFCFlashDlg::OnFSCommandShockwaveflash(LPCTSTR command, LPCTSTR args) ;函数有两个参数,就是flash的Action Script中FSCommand语句中的两个参数。
其实并不一定两个参数都用到,flash脚本中可以就使用一个参数,这样这边的函数就只要对第一个参数进行处理就行了。
第二步:编写消息处理代码。
在刚添加的FSCommand消息处理函数中,对两个参数进行处理。
其实就是做字符串比较的操作,根据是什么字符串来判断用户进行了什么操作。
大概就是这样子的:
void CPlayFlashDlg::OnFSCommandShockwaveflash1(LPCTSTR command, LPCTSTR args)
{
// TODO: Add your control notification handler code here
if( 0 == strcmp(command,”bt”) )
{
if( 0 == strcmp(args,”enter”) )
{
MessageBox(“欢迎进入系统!”);
}
}
else if( 0 == strcmp(comm and,”quit”) )
{
MessageBox(“您选择了退出!”);
CDialog::OnCancel();
}
}
这只是最简单的处理形式,当然你可以在flash中发送复杂的字符串,在这边就要进行更多的处理了。
2、MFC通过CallFunction函数调用Flash
第一步:Flash中ExternalInterface.addCallback用处理。
在FLASH中,要用ExternalInterface.addCallback把能被外部调用的函数注册一下,例如:ExternalInterface.addCallback("setAlt", setAlt);
function setAlt (para:String = "3150")
{
alt.text = para; //alt为swf文件中的一个动态文本
}
第二步:MFC中使用CallFunction函数传入参数。
想让MFC主动往flash传内容并且让flash响应,用控件的CallFunction方法。
在MFC中,调用CallFunction 方法,传入一个比较复杂的字符串,描述了要调用的函数的名称、参数等等,以XML的形式呈现。
详情参考FLASH 帮助的“外部API 的XML 格式”一文。
此处CallFunction传递的参数为XML格式,如下:
CString temp = _T("<invoke name=\"setAlt\" returntype=\"xml\">\
<arguments><string>3500FT</string></arguments>\
</invoke>");
m_FlashPlayer.CallFunction(temp);
注意,<arguments>必须是完整的一行,具体为什么我也不太清楚。
再次运行程序,可以发现ALT的值已经由3280FT变成了3500FT。