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

新年快乐--询问新年第一个问题--关于VB中的颜色

楼主ipqn(i.Posei)2003-02-03 19:45:32 在 VB / 基础类 提问

大家都知道,VB中颜色可以用诸如&H8000000F&这样的代码表示!  
  但如果我知道一颜色的红、绿、蓝的值是多少,怎么才可以把他翻译成上边的那种代码表示形式!(用什么方法或软件)  
  如(红190   绿200   蓝210)  
  谢谢!给大家拜个晚年! 问题点数:50、回复次数:7Top

1 楼XLYT(雨田)回复于 2003-02-03 19:57:31 得分 5

rgb函数。到MSDN里找找。Top

2 楼ipqn(i.Posei)回复于 2003-02-03 20:00:55 得分 0

可否给出一个实例!Top

3 楼ipqn(i.Posei)回复于 2003-02-03 20:01:15 得分 0

或连接!Top

4 楼ipqn(i.Posei)回复于 2003-02-03 20:02:52 得分 0

我知道了!  
  lab.ForeColor   =   RGB(190,200,210)  
  Top

5 楼xxlroad(土八路)回复于 2003-02-03 20:32:41 得分 20

Private   Function   Red(ByVal   mlColor   As   Long)   As   Long  
          '从RGB值中获得红色值  
          Red   =   mlColor   And   &HFF  
  End   Function  
  Private   Function   Green(ByVal   mlColor   As   Long)   As   Long  
          '从RGB值中获得绿色值  
          Green   =   (mlColor   \   &H100)   And   &HFF  
  End   Function  
  Private   Function   Blue(ByVal   mlColor   As   Long)   As   Long  
          ''从RGB值中获得蓝色值  
          Blue   =   (mlColor   \   &H10000)   And   &HFF  
  End   FunctionTop

6 楼ipqn(i.Posei)回复于 2003-02-05 11:01:09 得分 0

怎么才可以把他翻译成上边的那种代码表示形式Top

7 楼xxlroad(土八路)回复于 2003-02-05 13:03:18 得分 25

Private   Sub   Command1_Click()  
  '可以从十进制转换到任意进制  
          Print   10,   tento(10,   16)   'A  
          Print   11,   tento(11,   16)   'B  
          Print   12,   tento(12,   16)   'C  
          Print   39,   tento(39,   16)   '27  
          Print   RGB(111,   112,   113),   tento(RGB(111,   112,   113),   16)  
  End   Sub  
  '************************辅助函数,可以从十进制转换到任意进制**********************  
  '//入口为十进制数,要转换的进制,返回为该进制数  
  Public   Function   tento(m   As   Long,   n   As   Long)   As   String  
  Dim   q   As   Long  
  Dim   r   As   Long  
          tento   =   ""  
          Dim   bStr       As   String  
          Do  
                  Call   myDivide(m,   n,   q,   r)  
                  If   r   >   9   Then  
                          bStr   =   Chr(55   +   r)  
                  Else  
                          bStr   =   Str(r)  
                  End   If  
                  tento   =   Trim(bStr)   &   tento  
                  m   =   q  
          Loop   While   q   <>   0  
  End   Function  
  '************************辅助过程,得到任意两个数的商和余数***************************  
  Public   Sub   myDivide(num1   As   Long,   num2   As   Long,   q   As   Long,   r   As   Long)  
          If   num2   =   0   Then  
                  MsgBox   ("非法除数")  
                  Exit   Sub  
          End   If  
          If   num1   /   num2   >=   0   Then  
                  q   =   Int(num1   /   num2)  
          Else  
                  q   =   Int(num1   /   num2)   +   1  
          End   If  
          r   =   num1   Mod   num2  
  End   SubTop

相关问题

  • VB中SQL查询问题!!!
  • VB+ACCESS+SQL查询问题
  • 新年快乐!问一个SQL查询问题 !
  • vb的颜色配置
  • 江湖救急!VB+ACCESS查询问题
  • 怎样将web颜色转换成vb颜色??????
  • VB能改变菜单颜色吗?
  • vb+access select 查询问题 高手指教
  • 询问一个VB连接ORA数据库的问题
  • vb中数据高效率查询问题

关键词

  • 代码
  • 转换
  • tento
  • mlcolor
  • hffend
  • 十进制
  • 颜色
  • rgb
  • num
  • 进制

得分解答快速导航

  • 帖主:ipqn
  • XLYT
  • xxlroad
  • xxlroad

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

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