为什么DBMemo控件不能显示数据中的回车换行?(200)

  • 主题发起人 fatalexception
  • 开始时间
F

fatalexception

Unregistered / Unconfirmed
GUEST, unregistred user!
环境:Delphi6, Oracle 10g程序结构:DBMemo -> DataSource -> ADOQuery -> ADOConnection -> Oracle问题描述:Oracle中的字段是Varchar2类型,存的内容是多行文本,每行之间用回车符和换行符分隔,但在DBMemo中全部显示到一行里面了,没体现出回车换行。比如说,数据库中存的是:AAA33333KKKK而DBMemo中显示的却是:AAA33333KKKK感觉这是个很低级的错误,Borland应该不会犯这么低级的错误吧,是我的用法有问题吧?请各位指教!
 
刚刚又测试了一下,如果数据库中存有连续的两个0D0A的话,DBMemo中就会表现出一个回车换行。但如果只存一个0D0A,DBMemo就不会回车换行。
 
在你的FormKeyDown事件里面写上这此if key=13 then begin if (self.activecontral is TMeno) then key := 0 ;end;
 
谢谢R-James,但你可能没有理解我的问题。我不是“向DBMemo中录入回车换行”,而是“用DBMemo显示数据中的回车换行”。
 
有没有设置DBMemo的WordWrap属性?
 
回haidy: WordWrap属性的功能是“决定是否自动换行”。所谓自动换行,就是当文本内容超过编辑框的宽度后,文本自动换下一行显示。与文本中的回车换行符无关。 实际上,我也试过将WordWrap属性设为True或False,均没有作用。
 
MEMO控件也是这样的,上次遇到过这个问题,后来我用RICHEDIT控件了,你可以改为非数据感知控件吗?
 
Delphi世界qq群:23981160欢迎大家来玩
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
883
import
I
顶部