诸位高手好, 前几天我在一个贴子中看到可以用SetBkMode将TDBGrid的背景设为透明再配上背景图画, 可以使表格更加美观.这确实很诱人, 我试着自己作, 可是运行后却没有任何反映. 以下是代码:showmessage(inttostr(SetBkMode(DBGrid1.Handle, TRANSPARENT)));
函数调用总是返回0 (不成功)Delphi的Help中关于SetBkMode的说明如下:int SetBkMode(
HDC hdc, // handle of device context
int iBkMode // flag specifying background mode
); Parametershdc
Identifies the device context. iBkMode
Specifies the background mode. This parameter can be either of the following values: OPAQUE:
Background is filled with the current background color before the text, hatched brush, or pen is drawn.TRANSPARENT:
Background remains untouched.不知我应该做何修改. 我估计是DBGrid1.Handle部分出的问题, 函数要求的是HDC类型, 而DBGrid1.Handle返回的是HWND类型, 类型不匹配.我很早就有这个疑问: WindowsAPI中像HDC, HWND这样的句柄都有哪些, 它们都有什么区别, 相互之间又应该如何转化? Delphi中用THandle把它们都包括进去了, 可使用起来还是显得不太兼容呀, 例如本例. 请高手能借这个问题展开, 讲讲API中的句柄... 谢谢了! 发言就有分! 分不够再补!
函数调用总是返回0 (不成功)Delphi的Help中关于SetBkMode的说明如下:int SetBkMode(
HDC hdc, // handle of device context
int iBkMode // flag specifying background mode
); Parametershdc
Identifies the device context. iBkMode
Specifies the background mode. This parameter can be either of the following values: OPAQUE:
Background is filled with the current background color before the text, hatched brush, or pen is drawn.TRANSPARENT:
Background remains untouched.不知我应该做何修改. 我估计是DBGrid1.Handle部分出的问题, 函数要求的是HDC类型, 而DBGrid1.Handle返回的是HWND类型, 类型不匹配.我很早就有这个疑问: WindowsAPI中像HDC, HWND这样的句柄都有哪些, 它们都有什么区别, 相互之间又应该如何转化? Delphi中用THandle把它们都包括进去了, 可使用起来还是显得不太兼容呀, 例如本例. 请高手能借这个问题展开, 讲讲API中的句柄... 谢谢了! 发言就有分! 分不够再补!
解决方案 »
- 关于Combobox一个很难的问题
- Happy new year!!!如何实现自动拨号上网?
- 高手帮帮忙,fastreport边生成报表文件边传输到打印机
- 提一个有关VCL简单的问题 有关PUBLIC PUBLISHED
- 【高手请看】在窗体的oncreate事件中,那些事件能造成异常呢?
- 关于form.show(问题解决加到50分)
- 这个问题真的很难吗? 如何在Dbgrid中显示备注型字段内容
- 一段vb代码 翻译成delphi 求指导
- 问个菜菜的问题。
- Pascal 中怎样让用户输入的字符变成*,就象输入密码一样?
- WebBrowser控件中.点击一个下载文件的链结.不弹出任何窗口.就下载到指定目录
- 这个MSDN是不是常说的那个MSDN资料库?
100分,斑竹我要退贴!我在别的地方找到答案了。
不要那么小气嘛