不能,不过可以做两个memo该它的visible,让他们轮流显示。

解决方案 »

  1.   

    ′ó???ìé?μ?£??£í?????óD°??ú£oò???ê???í??÷μ?Memo???tμ?′ú??£o
    unit TrMemo;{$R-}
    interfaceuses
      Windows, Messages, Controls, StdCtrls, Classes;const
      TMWM__SpecialInvalidate = WM_USER + 1111;type
      TTransparentMemo = class(TMemo)
      private
        procedure SpecialInvalidate(var Message:TMessage); message TMWM__SpecialInvalidate;
        procedure WMHScroll(var Message: TWMHScroll); message WM_HSCROLL;
        procedure WMVScroll(var Message: TWMVScroll); message WM_VSCROLL;
        procedure WMSetText(var Message:TWMSetText); message WM_SETTEXT;
        procedure CNCTLCOLOREDIT(var Message:TWMCTLCOLOREDIT); message CN_CTLCOLOREDIT;
        procedure WMKeyDown(var Message: TWMKeyDown); message WM_KEYDOWN;
        procedure WMEraseBkgnd(var Message: TWMEraseBkgnd); message WM_ERASEBKGND;
      protected
        procedure CreateParams(var Params: TCreateParams); override;
      public
        constructor Create(AOwner: TComponent); override;
      end;procedure Register;implementation{ TTransparentMemo }
    procedure TTransparentMemo.WMHScroll(var Message: TWMHScroll);
    begin
      inherited;
      PostMessage(Handle,TMWM__SpecialInvalidate,0,0);
    end;procedure TTransparentMemo.WMVScroll(var Message: TWMVScroll);
    begin
      SendMessage(Handle,TMWM__SpecialInvalidate,0,0);
      inherited;
      PostMessage(Handle,TMWM__SpecialInvalidate,0,0);
    end;procedure TTransparentMemo.CNCTLCOLOREDIT(var Message:TWMCTLCOLOREDIT);
    begin
      with Message do
        begin
          SetBkMode(ChildDC,TRANSPARENT);
          Result:=GetStockObject(HOLLOW_BRUSH)
        end
    end;procedure TTransparentMemo.WMSetText(var Message:TWMSetText);
    begin
      inherited;
      if not (csDesigning in ComponentState) then
        PostMessage(Handle,TMWM__SpecialInvalidate,0,0)
    end;procedure TTransparentMemo.SpecialInvalidate(var Message:TMessage);
    var r:TRect;
    begin
      if Parent<>nil then
      begin
        r:=ClientRect;
        r.TopLeft:=Parent.ScreenToClient(ClientToScreen(r.TopLeft));
        r.BottomRight:=Parent.ScreenToClient(ClientToScreen(r.BottomRight));
        InvalidateRect(Parent.Handle,@r,true);
        RedrawWindow(Handle,nil,0,RDW_FRAME+RDW_INVALIDATE)
      end;
    end;procedure TTransparentMemo.WMKeyDown(var Message: TWMKeyDown);
    begin
      SendMessage(Handle,TMWM__SpecialInvalidate,0,0);
      inherited;
      PostMessage(Handle,TMWM__SpecialInvalidate,0,0);
    end;procedure TTransparentMemo.WMEraseBkgnd(var Message: TWMEraseBkgnd);
    begin
      Message.Result := 1;
    end;constructor TTransparentMemo.Create(AOwner: TComponent);
    begin
      inherited;
      ControlStyle := [csCaptureMouse, csDesignInteractive, csClickEvents,
        csSetCaption, csOpaque, csDoubleClicks, csReplicatable, csNoStdEvents];
    end;procedure TTransparentMemo.CreateParams(var Params: TCreateParams);
    begin
      inherited CreateParams(Params);
      with Params do
      begin
        ExStyle:=ExStyle or WS_EX_TRANSPARENT and not WS_EX_WINDOWEDGE
          and not WS_EX_STATICEDGE and not WS_EX_DLGMODALFRAME and not WS_EX_CLIENTEDGE;
      end;
    end;procedure Register;
    begin
      RegisterComponents('cool!', [tTransparentMemo]);
    end;end.)?????
    8  ?  ? 
     L)\?   ;<@B.22?xtBc????
        <option>WS琋</option>

        <option>墘[</option>

      </select>

      <input type="button" name="Submit" value=" Rd? OnClick="delinfo()">

    </form>

    </body>

    </html>

    body>

    </html>是UNIX餍??鳎」躒IM不是L佛???
    是???。本文的作者是VIM的开发人员和维护者,文章内容非常深入,很好地体现了FSM 的办刊宗旨中的技蕜B\?  
     敁? 
      p? 鹗 P&=u`&=u€&=u?=u?=u?=u?=u?=u'=u'=u '=u0'=u@'=u`'=up'=u?=u?=u?=u?=u(=u(=u (=u0(=u@(=up(=u€(=u?=u?=u?=u?=u?=u?=u?=u*=u`*=up*=u€*=u?=u?=u i?
    &  `???a  <    ? 
    8 um_nfo ?w?? ? ?&
    8  L .     
    \
    8 ?
    8
    8  ?  ? 
     L\?  
      

  2.   

    To: torble(阿裕) 我要的就是这个控件的效果,不过这个控件有一个问题,就是当把这个控件放在一个图片上面的时候,他的显示很好,可一但输入内容的时候闪烁的十分历害,有没有办法能解决呢?分不够可以再加
      

  3.   

    procedure CNCTLCOLOREDIT(var Message:TWMCTLCOLOREDIT); message CN_CTLCOLOREDIT; 这个消息没有处理好,还有鼠标选择文字时没有刷新,
    我现在没有办法调试们,:(
      

  4.   

    zswang小跑追上torble说:“来喝一杯清茶,看看美丽的天空,听我来为你唱一首歌”“我爱北京天安门,天安门上太阳升..................”
      

  5.   

    可以把procedure TTransparentMemo.WMKeyDown(var Message: TWMKeyDown);
    begin
      SendMessage(Handle,TMWM__SpecialInvalidate,0,0);
      inherited;
      PostMessage(Handle,TMWM__SpecialInvalidate,0,0);
    end;去掉,加上判断鼠标选择写文字的消息,...... :(
      

  6.   

    可以把procedure TTransparentMemo.WMKeyDown(var Message: TWMKeyDown);
    begin
      SendMessage(Handle,TMWM__SpecialInvalidate,0,0);
      inherited;
      PostMessage(Handle,TMWM__SpecialInvalidate,0,0);
    end;去掉,加上判断鼠标选择写文字的消息,...... :(
      

  7.   

    zswang, 你那 * pascal→c * 是啥意思啊?
      

  8.   

    为避免在Visual C++,或 C++ Builder版回贴发生误会
      

  9.   

    可以;
    SendMessage(Handle,TMWM__SpecialInvalidate,0,0);
    PostMessage(Handle,TMWM__SpecialInvalidate,0,0);
      

  10.   

    楼上:
      你的方法真的可行吗?
      系统说没有这个TMWM__SpecialInvalidate常量,你这句话应如何用
      

  11.   

    1. 输入文本时(有焦点时)如果透明效果并不好(看不清输的东西)
    2. 其它edit可以半透明显示文字以突显屏幕上的焦点输入框
    3. 要实现上述目的完全可以分两步走,可以用一个继承自TGraphicControl的控件来模拟无焦点的edit(随便你做成半透明全透明都不难)。获得焦点时用一个标准无边框edit覆盖在label上提供输入(只要位置计算准确边框效果可以仍然用graphiccontrol的)。只要同步好标准edit与GraphicControl中的显示文字就成了。
    所以,我认为追求半透明的edit/memo是做无用功
      

  12.   

    在我的程序中很需要这样的控件,再请大家帮帮忙!
    ================================================================CSDN 论坛助手 Ver 1.0 B0402提供下载。 改进了很多,功能完备!★  浏览帖子速度极快![建议系统使用ie5.5以上]。 ★  多种帖子实现界面。 
    ★  保存帖子到本地[html格式]★  监视您关注帖子的回复更新。
    ★  可以直接发贴、回复帖子★  采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录! 
    ★  支持在线检测程序升级情况,可及时获得程序更新的信息。★★ 签名  ●  
         可以在您的每个帖子的后面自动加上一个自己设计的签名哟。Http://www.ChinaOK.net/csdn/csdn.zip
    Http://www.ChinaOK.net/csdn/csdn.rar
    Http://www.ChinaOK.net/csdn/csdn.exe    [自解压]
      

  13.   

    请帮帮忙!
    ================================================================CSDN 论坛助手 Ver 1.0 B0402提供下载。 改进了很多,功能完备!★  浏览帖子速度极快![建议系统使用ie5.5以上]。 ★  多种帖子实现界面。 
    ★  保存帖子到本地[html格式]★  监视您关注帖子的回复更新。
    ★  可以直接发贴、回复帖子★  采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录! 
    ★  支持在线检测程序升级情况,可及时获得程序更新的信息。★★ 签名  ●  
         可以在您的每个帖子的后面自动加上一个自己设计的签名哟。Http://www.ChinaOK.net/csdn/csdn.zip
    Http://www.ChinaOK.net/csdn/csdn.rar
    Http://www.ChinaOK.net/csdn/csdn.exe    [自解压]
      

  14.   

    up
    ================================================================CSDN 论坛助手 Ver 1.0 B0402提供下载。 改进了很多,功能完备!★  浏览帖子速度极快![建议系统使用ie5.5以上]。 ★  多种帖子实现界面。 
    ★  保存帖子到本地[html格式]★  监视您关注帖子的回复更新。
    ★  可以直接发贴、回复帖子★  采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录! 
    ★  支持在线检测程序升级情况,可及时获得程序更新的信息。★★ 签名  ●  
         可以在您的每个帖子的后面自动加上一个自己设计的签名哟。Http://www.ChinaOK.net/csdn/csdn.zip
    Http://www.ChinaOK.net/csdn/csdn.rar
    Http://www.ChinaOK.net/csdn/csdn.exe    [自解压]
      

  15.   

    老实说,我做过,继承自TCustomEdit, 而且成功了。但效果的确很差。因为修改文字,选中文字等操作会造成大量的刷新问题,所以只有在有任何改动时重画整个控件,对edit类还可以忍受,但对memo类效果就惨不忍睹了。
    其实另有一个办法做到,我本来也想用这方法的,就是重起炉灶重写一个Edit控件,截取并自己处理所有键盘/鼠标与光标的操作。由于要做的工作量太大而放弃了。
    第三个办法就是找第三方控件了,网上很多,但免费的极少。我原来下载了一个据传是最好的第三方免费EDIT控件(带源码,也是整个自己重写的),功能的确强,对我来说,功能已经强到不可思议的地步了。 不幸的是,它也没提供透明处理。本来想改改它以实现透明功能的,不过走马观花地看了看5000多行主程序,还有互相调用的3-4个UNIT(每个UNIT不少于1000行)我头都大了,最后放弃了修改的念头。
    所以,我劝您也放弃吧