CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

******如何实现ComboBox和Text的靠右显示?******

楼主zhaojinghui(~穷的就剩钱了~)2005-03-01 14:56:03 在 Delphi / VCL组件开发及应用 提问

如何实现ComboBox和Text的靠右显示?  
  最好是不要用其它控件! 问题点数:100、回复次数:15Top

1 楼zhaojinghui(~穷的就剩钱了~)回复于 2005-03-01 15:11:25 得分 0

是不没有人知道吧!Top

2 楼zhaojinghui(~穷的就剩钱了~)回复于 2005-03-01 15:16:56 得分 0

标题和上面打错了一个字!  
   
   
  如何实现ComboBox的Text的靠右显示?  
  最好是不要用其它控件!  
  Top

3 楼ly_liuyang(Liu Yang LYSoft http://lysoft.7u7.net)回复于 2005-03-01 15:40:03 得分 20

自己继承procedure   CreateParams(var   Params:   TCreateParams);   override;  
   
  procedure   TEditEx.CreateParams(var   Params:   TCreateParams);  
  const  
      Alignments:   array[Boolean,   TAlignment]   of   DWORD   =  
          ((ES_LEFT,   ES_RIGHT,   ES_CENTER),(ES_RIGHT,   ES_LEFT,   ES_CENTER));  
  begin  
      inherited   CreateParams(Params);  
      with   Params   do  
      begin  
          Style   :=   Style   or  
              Alignments[UseRightToLeftAlignment,   FAlignment];  
      end;  
  end;  
   
  就这么简单的  
   
  http://lysoft.7u7.netTop

4 楼sdcfall(词客)回复于 2005-03-01 15:44:17 得分 0

假设你要显示的字符串是s,   而combobox的Edit宽长是n,  
  则在s前面加上n-length(s)个'   '(空格),不就可以了吗?Top

5 楼hjf8086(hjf)回复于 2005-03-01 16:10:39 得分 0

这招   绝Top

6 楼zzlazio(sritsb)回复于 2005-03-01 16:25:12 得分 0

sdcfall(词客)  
  这种方法都有...无言诶....  
  >>>>>>>>>>>>>>>>>>>>>>>>>>>  
  支持ly_liuyang(Liu   Yang)   又学到点东西诶Top

7 楼alexanda2000(书生活)回复于 2005-03-01 16:47:51 得分 0

ly_liuyang能不能解释一下代码啊?Top

8 楼cdsgajxlp(起名很难)回复于 2005-03-01 17:09:38 得分 0

带星的就是与众不同Top

9 楼sally612(sally)回复于 2005-03-01 17:23:40 得分 0

学习Top

10 楼fayeflash(我爱阿菲)回复于 2005-03-02 08:40:49 得分 0

收藏起来Top

11 楼whbo(王红波(年轻人,要有所作为))回复于 2005-03-02 08:51:07 得分 0

//Tedit的文字从右向左  
  继承TEdit,重载CreateParams,修改Param即可。  
   
  procedure   TEdit_Ex.CreateParams(var   Params:   TCreateParams);  
   
  begin  
   
  inherited;  
   
  if   self.FTextOnRight   then   Params.Style:=Params.Style   or   ES_RIGHT;  
   
  end;  
   
     
  Top

12 楼merkey2002(小样的)回复于 2005-03-02 08:57:34 得分 0

回复人:   sdcfall(词客)   (   )   信誉:98    
  假设你要显示的字符串是s,   而combobox的Edit宽长是n,  
  则在s前面加上n-length(s)个'   '(空格),不就可以了吗?  
   
  ----------->  
  我覺得這位才是高手,歷害,佩服~Top

13 楼g961681(技术庸人(情商太低))回复于 2005-03-02 14:04:00 得分 0

ly_liuyang(Liu   Yang)   的方法用起来了吗?Top

14 楼dext(德克斯特)回复于 2005-03-02 14:56:30 得分 80

一条语句,纳来用继承?  
   
      SetWindowLong(ComboBox1.Handle,   gwl_ExStyle,   GetWindowLong(ComboBox1.Handle,   gwl_ExStyle)   xor   ws_Ex_Right   xor   ws_Ex_Left);  
  Top

15 楼huyongxiao()回复于 2005-03-02 15:04:55 得分 0

应该说ly_liuyang(Liu   Yang)   是大侠,而sdcfall(词客)   是奇侠Top

相关问题

  • 能不能让tedit组件的text靠右边对齐
  • 怎样才能让edit中的text靠右或者靠中间?
  • combobox中实现displaymemberu问题
  • 问一个很菜的问题,文本框中的text如何靠右?就象计算器的显示那样
  • 如何在ListCtrl上实现一个ComboBox?
  • DataGrid里边ComboBox实现特效问题????
  • combobox能实现多列的显示吗?
  • 在asp中能实现ComboBox吗?
  • 我觉得Combobox不能实现我想实现的功能:
  • 怎样实现comboBox实现水平滚动条?

关键词

  • liuyang
  • combobox
  • createparams
  • sdcfall
  • tcreateparams
  • es
  • 显示
  • ly
  • liu yang
  • tedit

得分解答快速导航

  • 帖主:zhaojinghui
  • ly_liuyang
  • dext

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo