DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: hfh9801
今日帖子: 0
在线用户: 4
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 bios (阿贡) ★☆☆☆☆ -
盒子中级会员
2003/8/6 21:31:11
标题:
qq贴图的坐标问题? 浏览:2303
加入我的收藏
楼主: qq贴图的坐标问题?

图是贴上去了,但坐标却定不准,怎么定才能象QQ那样,

光标到哪里,图片就贴到哪里!?

var
 lie,hanshu:Integer;

procedure TForm1.Button1Click(Sender: TObject);
var
  DC: HDC;
  bmp: TBitmap;
  ACanvas:TCanvas;
  iX, iY,
  han2,hanchan: Integer;
begin
  han2:=RichEdit1.Perform(EM_LINEFROMCHAR, -1, 0);
  ACanvas := TCanvas.Create;
  bmp := TBitmap.Create;
  DC := GetWindowDC(RichEdit1.Handle);
  try
    ACanvas.Handle := DC;
    Bmp.LoadFromFile('F:\use\图象\图片\smallbmp\xpico_bmp\a.bmp');
    hanchan:=ACanvas.TextWidth('A')*length(richedit1.Lines.Strings[han2]);
    iX := hanchan ;
    iY :=ACanvas.TextHeight('A')*hanshu;
    ACanvas.Draw(iX, iY, bmp);
  finally
    ReleaseDC(RichEdit1.Handle, DC);
    ACanvas.Free;
    bmp.Free;
  end;
end;

 

procedure TForm1.RichEdit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  lie :=RichEdit1.CaretPos.X;
  hanshu:=RichEdit1.CaretPos.Y+1 ;
end;

----------------------------------------------
按此在新窗口浏览图片
按此在新窗口浏览图片
作者:
男 bios (阿贡) ★☆☆☆☆ -
盒子中级会员
2003/8/7 10:35:02
1楼: 没人回答吗?
----------------------------------------------
按此在新窗口浏览图片
按此在新窗口浏览图片
作者:
男 bios (阿贡) ★☆☆☆☆ -
盒子中级会员
2003/8/7 15:50:45
2楼: 还没人回答吗32?
----------------------------------------------
按此在新窗口浏览图片
按此在新窗口浏览图片
作者:
男 bios (阿贡) ★☆☆☆☆ -
盒子中级会员
2003/8/7 22:09:55
3楼: 啊门你怎么不帮忙呢?
其他人呢?
----------------------------------------------
按此在新窗口浏览图片
按此在新窗口浏览图片
作者:
男 boy (阿門) ★☆☆☆☆ -
盒子活跃会员
2003/8/7 22:13:42
4楼: 我有在想但我想不出來.....按 enter 圖就不見了

我再試試吧
----------------------------------------------
Delphi開發◆伺服器架設◆免安裝APACHE,PHP,CGI Perl, MYSQL ★
作者:
男 bios (阿贡) ★☆☆☆☆ -
盒子中级会员
2003/8/8 7:16:19
5楼: 感谢你的思考,是我错怪了你了,谢谢!
----------------------------------------------
按此在新窗口浏览图片
按此在新窗口浏览图片
作者:
男 boy (阿門) ★☆☆☆☆ -
盒子活跃会员
2003/8/8 13:58:48
6楼: 真的沒辦法.......輸入文字怪怪
var
  DC: HDC;
  bmp: TBitmap;
  ACanvas:TCanvas;
  X, Y, c: Integer; //圖片位置座標
begin
  X :=strtoint(IntToStr(RichEdit1.CaretPos.x));
  Y :=strtoint(IntToStr(RichEdit1.CaretPos.y));
  ACanvas := TCanvas.Create;
  bmp := TBitmap.Create;
  DC := GetWindowDC(RichEdit1.Handle);
  try
    ACanvas.Handle := DC;
    Bmp.LoadFromFile('H:\Avi_圖_Wav\hot.bmp ');
    ACanvas.Draw((x-4)*3,y, bmp);
  finally
    ReleaseDC(RichEdit1.Handle, DC);
    ACanvas.Free;
    bmp.Free;
  end;
  RichEdit1.setfocus;
end;
----------------------------------------------
Delphi開發◆伺服器架設◆免安裝APACHE,PHP,CGI Perl, MYSQL ★
作者:
男 bios (阿贡) ★☆☆☆☆ -
盒子中级会员
2003/8/8 14:57:51
7楼: 我估计QQ用的不是本身的控件而是第三方控件
----------------------------------------------
按此在新窗口浏览图片
按此在新窗口浏览图片
作者:
男 boy (阿門) ★☆☆☆☆ -
盒子活跃会员
2003/8/8 18:51:23
8楼: 是的 沒錯


----------------------------------------------
Delphi開發◆伺服器架設◆免安裝APACHE,PHP,CGI Perl, MYSQL ★
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行70.3125毫秒 RSS