怎样动态的输入文字以及竖直输入?就如同画图中的文字输入!!!用鼠标框定一个矩形,在矩形中输入文字,同时能够对文字的显示方式进行设定:普通(水平显示),特殊(竖直显示)。有没有这方面的文字输入函数,可是DrawText不能实现动态输入,只能是静态输入。能不能在Timage中实现这个功能,因为不只是进行字处理,还需要进行图像处理。
解决方案 »
- ADOQuery研究,Close后Open,数据库不是一直处于连接状态吗?
- 如何用IdHttp控件实现只下载网页代码?
- 在CSDN看到的一段加密解密程序,但解密出来的不对,请看看错在哪儿了?
- 怎样对两个ADOQUERY的Field[i].AsVariant赋值... 在线等
- ADOQuery使用缓存的问题.
- 从哪里取出ADO,IE,Excel的版本号....
- 请问我的用代码生成combobox控件的程序,为什么MyCombobox.Style :=csDropDownList这句会报错???
- 高分相送!
- 可不可以实现远程打印
- 請教各位高手---有關DELPHI打印(A4紙一半)報表紙張問題??
- 一个问题我不明白,请大家帮忙解答!
- 数据表数据的复制问题
Str:=Str+Char;DrawText(GetDC(Handle), PChar(Str), Length(Str), Rect, DT_LEFT or DT_TOP or DT_WORDBREAK);
因为每输入一个字符就进行一次DrawText,因此是在不同Rect输入字符中,
而且不能进行换行输入,其后的输入格式也是没有什么作用!但是,这样思路倒挺好的!
你找找吧
楼主看仔细了:1.用个字符串把字符记下来 Str:=Str+Char; 不是“每输入一个字符就进行一次DrawText,因此是在同Rect输入字符中”
而是将整个字符串一次性draw出来。哈2.而且不能进行换行输入,其后的输入格式也是没有什么作用! DT_WORDBREAK就是当字符到了rect的边界时,自动换行的一个标示符如果还有什么不明白的,看看rect的帮助吧。在WIN32SDK里 :-)
特别是其中的Canvas.TextRect()方法可以将输出的文字限制在一个矩形框中。看一下上述方法的帮助。
但是,总来的说还是效果不好,我上次说不能回车的意思是:当用户敲回车时进行换行,而不是在rect的边界自动回车。我对继承和重载不是很熟悉,怎样对没有KeyPress过程的控件中进行这样Char操作?比如说Timage,怎样才能把TForm中的KeyPress加到Timage中呢?还有,对于竖直输入问题,我用对中文每个字后加回车的方式实现了竖直输入,但是怎样才能不分中英文的竖直输入呢?谢谢大家了!!!