CrichEditView禁止OLe托拽?急...............

gag2463 2008-01-24 09:22:26
继承了一个CrichEditView,直想用来支持文本
想禁掉Ole托拽 除CF_TEXT 之外的情况
重载了 QueryAcceptData 缺不行
兄弟姐妹们帮着看看给实现一下 多谢!~
现在代码如下:
HRESULT CScriptView::QueryAcceptData(LPDATAOBJECT lpdataobj,
CLIPFORMAT* lpcfFormat, DWORD /*dwReco*/, BOOL bReally, HGLOBAL hMetaPict)
{
ASSERT(lpcfFormat != NULL);
if (!bReally)
return S_FALSE;
if (IsRichEditFormat(*lpcfFormat))
return S_FALSE;
COleDataObject dataobj;
dataobj.Attach(lpdataobj, FALSE);

m_lpRichEditOle = NULL;
HANDLE hData = dataobj.GetGlobalData(CF_TEXT);
if (hData == NULL) {
// 托拽图片
long lrst = RevokeDragDrop(this->GetSafeHwnd());
return S_FALSE;
}
}
查看了一下 用的 RichEditView的Handle ,是我所传入的handle
并且返回值也正常 为0,
但是拖拽过来的图片什么的 还是会显示在View上 费解!~

...全文
179 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
yaolixing 2009-02-16
  • 打赏
  • 举报
回复

重载
WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
if (WM_DROPFILES== message)
{
TRACE0("Forbit DropFiles @CSynEditView::WindowProc\n");
return S_FALSE;
}
gag2463 2008-01-28
  • 打赏
  • 举报
回复
这个方法和我上面写的是一样的吧?
我最近在View 的初期刷新的时候加了句 DragAcceptFiles(FALSE); 后好用
不知道为什么只用
HANDLE hData = dataobj.GetGlobalData(CF_TEXT);
if (hData == NULL) {
long lrst = RevokeDragDrop(this-> GetSafeHwnd());
这几句不行
gag2463 2008-01-25
  • 打赏
  • 举报
回复
还是不行
拖拽过来的文件如快捷方式 快捷方式的图标就会显示在View上

我用的VIew已经显示了特定的文件 不用显示拖拽过来的文件的文本内容
禁止外来的拖拽就可以 最好还能实现View内部文本的拖拽


zhoujianhei 2008-01-25
  • 打赏
  • 举报
回复
// From the WordPad sample, wordpvw.cpp
HRESULT CWordPadView::QueryAcceptData(LPDATAOBJECT lpdataobj,
CLIPFORMAT* lpcfFormat, DWORD reco, BOOL bReally,
HGLOBAL hMetaPict)
{
if (*lpcfFormat != CF_TEXT)
return S_FALSE;

return CRichEditView::QueryAcceptData(lpdataobj, lpcfFormat, reco,
bReally, hMetaPict);
}
zhoujianhei 2008-01-25
  • 打赏
  • 举报
回复 1
HRESULT CWordPadView::QueryAcceptData(LPDATAOBJECT lpdataobj, CLIPFORMAT* lpcfFormat, DWORD dwReco, BOOL bReally, HGLOBAL hMetaFile)
{
COleDataObject dataobj;
dataobj.Attach(lpdataobj, FALSE);
if(!dataobj.IsDataAvailable(CF_TEXT))
return S_FALSE;
return CRichEditView::QueryAcceptData(lpdataobj, lpcfFormat, dwReco, bReally, hMetaFile);
}
内容概要:本文围绕四开关Buck-Boost变换器的建模分析与闭环仿真性能展开研究,重点探讨其在Simulink环境下的稳压控制特性与系统动态响应。通过建立精确的状态空间平均法数学模型,设计基于PI调节器的闭环控制系统,并结合仿真手段验证了变换器在不同输入电压和负载条件下的输出电压稳定性与抗扰动能力。研究涵盖主电路拓扑结构、工作模态分析、小信号建模、控制器参数整定及Simulink仿真平台搭建等关键技术环节,实现了对升降压过程的平滑切换与高性能电压调节。同时,文中强调科研过程中应注重逻辑思维与创新意识的培养,倡导借助成熟仿真工具提升研究效率与系统设计水平。; 适合人群:具备电力电子技术基础、熟悉Simulink仿真环境,从事新能源变换系统、电源设计等相关方向的研究生或工程技术人员。; 使用场景及目标:①掌握四开关Buck-Boost变换器的工作原理与状态空间建模方法;②学习基于Simulink的闭环控制器设计与动态性能仿真验证流程;③为电力电子变换器的稳定性分析、控制器优化及工程化实现提供理论支持与实践参考。; 阅读建议:建议读者结合文中的仿真模型逐步操作,重点关注电路工作模态推导与控制器设计部分,深入理解系统稳定性判据与参数 tuning 方法,同时关注科研方法论的引导,提升系统性思维与仿真实践能力。
内容概要:本文详细介绍了基于自适应虚拟阻抗的光储并网系统谐波抑制策略的Simulink仿真实现方法,旨在通过构建高精度的仿真模型解决光伏发电与储能系统在并网过程中引发的谐波污染问题。文中深入剖析了自适应虚拟阻抗技术的核心原理,重点阐述其在动态调节阻抗参数以应对电网阻抗波动、有效抑制并网电流谐波、提升电能质量和系统稳定性方面的关键技术优势。该策略能够根据实时运行工况自适应调整控制参数,显著增强系统对复杂电网环境的适应能力。资源配套完整的Matlab/Simulink仿真模型与可运行代码,支持用户完美复现仿真结果,并为进一步的算法优化、控制器设计及学术研究提供坚实的技术基础。; 适合人群:具备电力电子、新能源并网、自动控制理论等相关专业知识背景的科研人员,包括从事相关课题研究的研究生、高校教师及电力系统领域的工程技术人员;熟悉Matlab/Simulink仿真平台并希望深入理解先进并网控制策略的研发人员; 使用场景及目标:①用于光储混合系统的电能质量分析与谐波治理关键技术研究;②支撑高水平学术论文的复现、科研项目申报及实际工程中并网逆变器控制器的设计与性能验证;③作为高校研究生课程或科研培训的教学案例,帮助学生深入理解虚拟阻抗控制机理、自适应算法设计及其在提升并网系统动态响应特性中的应用; 阅读建议:建议读者结合提供的仿真模型进行分模块调试与整体运行,重点关注控制器参数的整定过程、系统在不同电网条件下的频率响应特性和谐波抑制效果,同时建议参考相关领域的权威文献,以深化对自适应控制策略的理解,实现从仿真复现到技术创新的跨越。

15,976

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧