...
解决方案 »
- 100分 求TdxDBTreeList 导出Excel文件方法
- dxdbtreeview通过keyfield值如何找到这个值对应的节点?
- outlook左边的效果,怎么做呀????
- com+ 编程是怎么回事 我怎么都不懂 刚到公司不久 很郁闷 怎么学得怎么少呀 5555555
- 请问在DELPHI7中怎样使用在DELPHI6中的报表控件!DELPHI7当中可以安装吗?
- 请问如何编写一个类似OFFICE里的ACTIVEX插件(ouactrl.ocx)一样的函数库!
- 请问各位大侠哪里有Object Pascal Language Guide的中文译本??即刻结帖!!
- 有没有关于delphi的面向对象方面和类方面的好书。资料什么的。。急!!!!
- 我用了一个多表的联合查询后把数据放到了,Grid上面,删除的时候一下给关联的数据全删除了,怎么样做才能只删除主表的数据?谢谢大家了!
- Help me,如何实现这个函数
- 请问怎样使用polypolygon 函数
- Halcn6db是属于哪个控件的?如何得到?
一般继承自TGraphicControl的
(就是那些没有handle属性, 不能有focus的控件, 如image)
都有Transparent属性. 对TWinControl类的控件, 要实现透明只要完成以下
四步基本上就成了.
1.在Create中设定ControlStyle :=
ControlStyle - [csOpaque];)
2. override 它的CreateParams方法, exstyle 里加上WS_EX_TRANSPARENT.
3. 修改它的parent的window style, 去掉WS_CLIPCHILDREN. inherited CreateParams(Params);
with Params do
begin
{ 完全重画 }
Style := Style and not WS_CLIPCHILDREN;
Style := Style and not WS_CLIPSIBLINGS;
{ 增加透明 }
ExStyle := ExStyle or WS_EX_TRANSPARENT;
end;
4. 截获WM_ERASEBKGND, 什么都不做直接返回1.(不搽除背景)
一般有上面3步能成. 有些控件比如TPanel, 在它的paint中用了fillrect, 所以要实现透明的话还要override 它的paint方法, 自己画.
按钮透明需要进一步处理.
createparams里加上style := style or BS_OWNERDRAW;
然后在WM_DRAWITEM中自己画吧