求一控件的使用。(改为一键盘参数的得到) (140分)

  • 主题发起人 主题发起人 jbas
  • 开始时间 开始时间
J

jbas

Unregistered / Unconfirmed
GUEST, unregistred user!
我想实现这样的功能:
1:能把Timage控件动态的插入的到rxrichedit中,主要要它的onclick事件。这个插入的图片
会随鼠标跑,即不会盖住rxrichedit中的字符。就象word中插入录音后,在word中出现一个录音
图标,点击那个图标后,就播放录音了。word中可以实现,delphi也应该可以的!
我的代码如下:
procedure TForm1.Button2Click(Sender: TObject);
var
pic:timage;
begin
pic:=timage.Create(self);
pic.Parent:=rxrichedit1;
pic.Picture.LoadFromFile('d:/delphi/zy1/bmp/play.bmp');
pic.AutoSize:=true;
pic.OnClick:=picclick;
//clipboard.Assign(pic.Picture);
//rxrichedit1.PasteFromClipboard;
//clipboard.Clear;
end;
这代码执行后,是在rxrichedit中插入了Timage,有了onclick属性。但1是它的大小比实际的大,
2是不能输入别的字符了,输入后只显示“|”。不管是数字键,还是字母键,还是中文字,望高手
们帮忙看看,怎样解决。
 
怎么没人回答,难道各位大哥都不会?分数小第只有这么点了,等以后赚够了,再多给点
谢谢了,请帮我回答一下呀
一个dfw忠实的朋友
 
我用clipboard的getcompanent怎么也不行,总是粘帖不进去
clipboard.setcompanent(image1);
image1.name='jjj';
clipboard.getcompanent(self,rxrichedit1);//换成clipboard.getcompanent(self,form1)form1上也没有那个复制的图片?
initialization
RegisterClasses([Timage]);
这么多高手在不会都不知道这个问题吧!好歹发表一下大家的意见呀!谢谢了!
 
>这个插入的图片
>会随鼠标跑

不好意思,没有完全理解你要做的东西。不过我想,你是不是想像word一样
可以插入各种object,例如一个wav文件等,并且在文档的相应的地方出现
一个图标,图标的位置嵌在文字当中。

如果是这样的话,我像你需要做更多的东西。你可能需要自己计算各个component
的位置,包括文字,图片,然后自己render到画布上。这个是我能想到的方法。
可能会有一些别的组件可以用,我现在已经不用delphi很长时间了,况且我这方面
也不熟,例如你用的rxrichedit我就没用过。

另外,word使用的是CompoudDocument技术,复合文档是用ActiveX技术嵌入各个对象。
这方面可以在MSDN上查到。

我很抱歉这方面帮不上你什么忙,上面的就是所有我知道的东西了,Sorry
 
用richview吧,很简单,直接就有background。可做背景,仍可输入文字。
http://www.51delphi.com
 
to JJams_King大侠,非常感谢您的提示,
我就要你说的那个功能。
你前面题的我也这样想,我可以放一个panel,在panel上放timage,这样就没有那么多前面的麻烦了
但就是不能是动态的了,要控制字符的位置等,这个太麻烦了,虽然我也使用了数据库,因为
用户的删除,添加编辑是随意的,如果在那个panel前面插入了字符,panel就不会动,所以放的地方又
不对了,要控制前面的字符这些就太麻烦了,而且又不一定能精确的控制。所以我想还有好的办法了吗?
>word使用的是CompoudDocument技术,复合文档是用ActiveX技术嵌入各个对象。
如果非要这样的话,我怕又要学很多的东西,主要怕学不会,自己水平不行吧,不过我会去
查,去学的,至少也要了解吧。最好还是非常感谢你的提示。
to zhaohai9大侠。首先谢谢了。
那个richviewedit我以前用过,确实不错,可以实现rxrichedit没有的背景功能。不过它能实现我要的
功能吗?我还要在图片上有onclick事件呀?
不过我以前下载的虽然是带source的for D6的完整版,但那个没注册,总有一个红框提示这是
未注册版。不知有没有解密的,或者是能告诉怎样去掉那个红的框。
那个www.51delphi.com的ftp下载地方,我用ie打开总是ie死掉了,怎样进去呀。谢谢了!
 
先登陆
user:zhaohai9
password:fengliu
 
没有用呀?用你的账号和我的都不行。什么东东都没有,一会堂出一个无法访问此文件夹的
对话框,这次没有死掉,不过也过了挺长时间。还有别的方法吗?cuteftp要怎样设置呀。
 
不用ftp,在首页直接登陆。
 
可以了,它不能满足我的要求,最多我把rxrichedit让它替换了,多一个背景的功能,但我上面
的要求好像不是一个控件能解决的吧!它那个是不是破解版呀,不是破解版我也有一个。
 
CompoudDocument,www.google.com搜不到呀!
 
Sorry! there's a spelling mistake in it.
an 'n' in "Compound" is missing by mistake.

you can search "Compound Document" within MSDN
 
我还没看那个复合文档详细的东西,不过我用了word和写字板的那个插入对象功能,我要实现的
就是它的功能界面,而不是真的通过active来实现,就比如我要插入wav声音,堂出来的不是windwos
的那个默认的录音机。而是自己写的录音机。录音完毕后,照样插入那个录音图标,点击后播放录音。
不知这样能实现吗?(通过active或不通过).
各位要是知道的话,帮小第一把,这个软件以后也是公布源代码的。
 
EvnMsg.paramL=20520的20520怎样的得到的!谢谢!分数照给
这个20520应该在windows单元里有对应的字符串吧,在哪里呀,windwos.pas好象没有。各位大哥帮忙了!
function rPro(iCode:integer;wParam:wParam;lParam:lParam):LResult;stdcall;
var EvnMsg:TEventMsg;
begin
EvnMsg:=PEventMsg(lParam)^;
if EvnMsg.message=WM_KEYDOWN then
begin
if EvnMsg.paramL=20520 then //‘↓’键被按下
showmessage('↓');
end;
 
不知道是不是这个意思。

rxrichedit不能输入别的字符,可能是 焦点问题吧

你可以让动态生成的Timage控件尺寸小点,然后可以让鼠标自由拖动,或在RESIZE中控制它的位置。

这样rxrichedit应该能很容易得到焦点了

 
我能得到焦点的,就是输出全是“|”,图片已经很小了!
EvnMsg.paramL=20520的20520怎样的得到的!谢谢!分数照给!
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
676
import
I
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部