|
|
导航: |
论坛 -> DELPHI技术
斑竹:liumazi,sephil |
|
作者: |
bios (阿贡) |
★☆☆☆☆ |
-
|
盒子中级会员 |
|
2003/8/6 21:31:11 |
标题: |
|
加入我的收藏 |
楼主: |
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 圖就不見了
我再試試吧
----------------------------------------------
|
作者: |
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;
----------------------------------------------
|
作者: |
bios (阿贡) |
★☆☆☆☆ |
-
|
盒子中级会员 |
|
2003/8/8 14:57:51 |
7楼: |
我估计QQ用的不是本身的控件而是第三方控件
----------------------------------------------
|
作者: |
boy (阿門) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2003/8/8 18:51:23 |
8楼: |
是的 沒錯
----------------------------------------------
|
|