首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

關於第三方控件 EhLib 之 TDBVertGridEh,该如何解决

2013-12-29 
關於第三方控件 EhLib 之 TDBVertGridEh[解决办法]焦点颜色去除(可以在设计时):DBVertGrdEh1-LabelColPar

關於第三方控件 EhLib 之 TDBVertGridEh
關於第三方控件 EhLib 之 TDBVertGridEh,该如何解决
[解决办法]
焦点颜色去除(可以在设计时):

DBVertGrdEh1->LabelColParams->FillStyle = cfstThemedEh;


列缩放就暂时不清楚了


[解决办法]
我目前养成了一个很好的习惯,就是绝不使用三方的VCL控件。因为IDE升级后比较的麻烦,要等三方控件的更新。用BCB自带的控件能满足基本需要
[解决办法]
完全不用第三方组件那是不对的,什么轮子都自己造是没意义的,除非是你自己想学习造轮子,或者现成的轮子中说没有令自己满意的。记得看过本书中的作者说过,一些自己需要花费两三天才能实现的东西如果有现成的话,为此多花一分钟都是不值得的。啥事最好都别走极端,第三方控件(库)只要不滥用,该用的就用。而且这些第三方组件(库)多数都是有源码的,你完全可以自己偷偷摸摸地抄(学习)它的代码实现成自己的组件(库),特别是你担心IDE版本升迁的问题时。
[解决办法]
反到是一些不提供不开放源码的VCL组件或库,那些当然就别用了。
[解决办法]
第三方控件,  kfrght 说不用他, 就像 LZ 说的 Ehlib, 软件的质量根本上不去, 再去看看 DevExpress, TMS 等等大名鼎鼎的控件, "自带的控件能满足基本需要"?

笨人曾因为"自己需要的东西却没现成的", 用了20天完成,30天去除BUG
[解决办法]
楼上这位,能否把你这个窗口和单元文件共享出来学习一下啊?做的确实漂亮
[解决办法]
那是在WIN8下漂亮,在XP下也很难看關於第三方控件 EhLib 之 TDBVertGridEh,该如何解决
[解决办法]
这是 TDBVertGridEh 做的? 还挺不错的,得下个EHLIB6试试。




關於第三方控件 EhLib 之 TDBVertGridEh,该如何解决

[解决办法]
列缩放就可能只能是这样了

void __fastcall TTestForm::DBVertGridEh1DrawRowCell(TObject *Sender, const TRect &Rect,
  int DataRow, TFieldRowEh *Row, Gridseh::TGridDrawState State)
{
DBVertGridEh1->LabelColWidth = 80; // 设计时的值
}
//---------------------------------------------------------------------------

[解决办法]
列缩放, 设置DBGridEh 的Options 的 dgColumnResize  应该就可以了。
[解决办法]
喔,不好意思,我还以为差不多呢。
[解决办法]
Ehlib 版本是V6.x, 

而 TDBVertGridEh 顶多是个V1.2, 

很多表格内部控制还没有开发或开放呢
[解决办法]
把縮放鼠標圖去除!!  可以这样

void __fastcall TTestForm::DBVertGridEh1MouseMove(TObject *Sender,
TShiftState Shift, int X, int Y)
{
HCURSOR LCur = Screen->Cursors[crHSplit];
if (GetCursor() == LCur)
{
LCur = Screen->Cursors[crDefault];
::SetCursor(LCur);
}
}

[解决办法]
不带包运行的方式,不要指定链接LIB文件,此时链接的是修改后的  DBVertGridsEh.obj 应该是有效的。不过这方式需要很慎重,如果因为编译选项不一样,导致新编译的OBJ与原OBJ前后内存布局不一致的话,会导致大错。

你直接重新编译修改后的 EHLIB 包,就一切安好了。当然你购买的是源码版本才行。不然版权就是用来说的了。
[解决办法]
俺常常上厕所时有一种幻想,如果李维在产品发布会上口中说出的那些新技术、新概念,而李维是代表GOOGLE而来为GOOGLE的产品做推广,那么李维口中那些玄乎乎的东西一出口,会场下不知多少声嘶力竭的与会者昏厥,在掌声欢呼声雷鸣之下多少人冲上台前推倒保安去强吻李维,撕扯李维的衣服做纪念....可惜李维背后的牌子是EMB關於第三方控件 EhLib 之 TDBVertGridEh,该如何解决
[解决办法]
三方控件功能丰富,但是项目迁移到更新版本的C++Builder时会带来各种问题,特别是用到几乎停止维护的三方组件项目(VCL本身就在不停的升级变化中)。所以我现在个人基本不用三方控件。

从楼主的工程截图上看起来,效果还是很好的。
[解决办法]
c++Builder 加入pas文件,也可以起到效果
[解决办法]

修改 cbproj 工程文件,将有关EHLIB 部分删除,这样就不会链接或使用已编译的EHLIB包及LIB库,为保障程序链接最新生成的DBVertGridsEh.obj,还要将最新DBVertGridsEh.OBJ路径,放在旧DBVertGridsEh.obj路径之前,最好是直接删除旧的DBVertGridsEh.obj.

在程序中指定链接一堆的 obj .....这个比较烦人。所以我是建议你重新编译EHLIB....

[解决办法]
另一个方式是重新编译一个Ehlib_myModify.LIB,专门供链接用,就不用指定链接一堆的obj,这样就可以针对个别工程使用特定的版本。

针对你的情况(改变DBVertGridsEh的默认行为),最好是能写个 crack 函数(内存破解的做法),直接修改内存中的DBVertGridsEh的行为。

热点排行