1.公司大牛说控件都是绘出来的?但我的理解是DELPHI控件都是调用WINDOWS的API创建的。那WINDOWS的控件是绘出来的?
2.Scoket中Tcp连接是通过线程来保持连接的,有最大数限制,Udp是无连接的,连接数不受限制,只受服务器流量限制?

解决方案 »

  1.   

    1、windows的公共控件(如TEdit)不需要写绘制代码,TGriphicControl才要用Canvas绘制(就是调用API)。
    2、看你用哪种模式,如果是select模式,则有64的限制,UDP则可设置系统接收缓存的大小来尽量避免丢包(在客户端多、发送数据很频繁情况下),当然UDP服务的响应代码应尽量提高效率。
      

  2.   

    Windows的基类同样是绘制的,Windows换风格后,控件样式也换了,是因为绘图方法或者绘图参数换了
      

  3.   

    Windows最终也是绘制的,只是这部分系统帮你做了,只须调用它的接口API就行了可以不调用API,完全自已绘制。像XE2的Fire Monkey
      

  4.   

    1. 这个问题怎么说呢,还是看个人如何理解吧,从字面看,控件就是Control。Control的概念就不是一句话两句话好解释清楚的。可以简单地理解为面向对象编程的产物之一。当然,我估计在楼主的这个问题上应该是狭义上的控件,即组件。对于组件Component而言分为可视和非可视两大类,对于非可视类,在设计期会绘制一个小图标以方便鼠标操作,但是这个小图标的绘制只是一个设计期的绘制,仅有可视类,并且在可视状态下或需要时才进行绘制。
    2. TCP连接的维护本质上并不依赖于用户线程,TCP的连接数上限,依赖于socket句柄资源,对于连入服务,只要内存允许,理论上来讲可以达到整形的上限减1(INVALID_SOCKET);对于连出服务,则依赖于端口资源,对于IPV4理论上限为65534个,但是实际上可用的资源一般操作系统都有一定的限制。UDP既然为无连接,那就不存在连接数一说。