画图的文本输出问题,very急,请大家帮忙! 如果要在画图的时候输出文本,比如说我画一条直线,而且直线有矢量图的一些特性,能够拖动,要在在直线的附近输出一串字符,采用什么办法好一些,是利用textOut呢,还是用另外的组件呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不需要控件,使用paintbox就可以了,只涉及一些简单的基础知识。 使用paintbox还是利用textout咯? 你可以自己编写一个组件啊,我觉得用组件来解决还是比较方便的。如果用PAINTBOX,在控制方面(特别是程序愈来愈复杂的时候)就不是太好。现在有些第三方控件已经有你说需要的功能。我也曾写了一个,和你说的功能差不多。还行~~~继承的是TGraphicControl 我以前做类似的程序的时候使用panel来模拟直线,但是当直线上千条的时候,机器的内存根本无法承受。所以才建议使用paintbox 怎么回没有,将画的东西保存成对象,在onpaint事件中重新画一下就好了 fengjn(小枫) :能不能说的详细点啊?谢谢! 使用叔祖什么的记录每一条直线的起点和重点。然后在onpaint事件中便利叔祖,将直线都画出来。 当你画的线或图形越来越多的画,那么你的PAINTBOX刷新就很慢还是强烈建议用第三方控件 楼上的观点存在一些错误。即使是控件也是画出来(只不过是WINDOWS给你画),如果画布很大的话,可以Paintbox.parent.DoubleBuffered:= true;然后在只更新屏幕可见的部分,怎么还会慢呢? to fengjin:你能贴出只更新屏幕可见部分的源代码吗?如果你用第三方控件,就不需要重复的刷新。虽然设DOUBLEBUFFERED可以减少刷新所带来的问题,但需要很大的内存(你的PAINTBOX的图形越多的话) invalidaterect();更新画布的部分区域 那如果一个组合得图形,比如说两个相交的园,相交于两个点,拖动得时候,由于pen。mode:=pmNotXor,那么肯定会留下两个点在原地,这个问题不能用重画解决吧? 请教一个webbrowser控件自动填表的问题 如何实现主菜单栏跟标题栏在同一行 TRxRichEdit控件:鼠标向里拖入文件(除bmp)程序就会死掉 stringgrid问题,找过csdn上相关的帖,都没有,进来看 300分求 多线程处理问题!? 怎样获取一首曲子的播放时间长度呢? 想必我们有生之年可以确信有外星人的存在! 我意淫下不可吗? 问一个关于sql语句的问题,一句话,100分! Happy new Year. Every programer. 窗体的问题 急!!!!!在线等!解决立即散发 怎样把主程序中的参数传递到钩子中?
还是强烈建议用第三方控件
你能贴出只更新屏幕可见部分的源代码吗?
如果你用第三方控件,就不需要重复的刷新。
虽然设DOUBLEBUFFERED可以减少刷新所带来的问题,但需要很大的内存(你的PAINTBOX的图形越多的话)