此问题困扰我很久了!
我想让Graphics.DrawString()或 ControlPaint.DrawStringDisabled()绘制的文本支持"金山词霸"等软件的屏幕取词功能,但不知如何下手.比如下面的"已.未审核"和"审核人:..."是自行绘制的,但无法支持屏幕取词:
我想让Graphics.DrawString()或 ControlPaint.DrawStringDisabled()绘制的文本支持"金山词霸"等软件的屏幕取词功能,但不知如何下手.比如下面的"已.未审核"和"审核人:..."是自行绘制的,但无法支持屏幕取词:
可以放个div到图片的文字部分.
WINFORM啊
你用个LABEL装那几个字,自己写个控件, 控制下LABEL位置嘛 看起一样就行啦就OK了啊
不知道是不是因为用GDI+绘的,用GDI看看看吧至少我用GDI在VC里面绘出来的是可以金山司霸的原理就是截获GDI一些输出函数,比如TextOut,DrawText,把里面的参数取出来
我不想继承Label.
目前 AuditStatusButton继承自CrystalButtonBase, CrystalButtonBase继承自Control
[DllImport("gdi32.dll", EntryPoint = "TextOut")]
public static extern int TextOut(
IntPtr hdc,
int x,
int y,
string lpString,
int nCount
); private void Form1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawString("gdi+ test", this.Font, Brushes.White, 100, 100);
IntPtr hdc = e.Graphics.GetHdc();
TextOut(hdc, 100, 120, "gdi test", 8);
e.Graphics.ReleaseHdc(hdc);
}
用TextOut输出的是可以的,我试过看来就是GDI+不可以不过,用GDI的话,可能你处理这些效果会比较麻烦
我想也是,它提取的可能只是某控件的一些文本属性(Text,Caption...),是不是该为Text属性加点什么Attribute?
这我知道,但为什么像Label,Button...的自带控件就支持取词呢? 难道它们的Text 不由GDI+绘制?