设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1507|回复: 2
打印 上一主题 下一主题

[Access本身] 如何调用调色板?

[复制链接]
跳转到指定楼层
1#
发表于 2003-12-21 22:50:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
怎样调用系统的颜色选择窗体,并获得其中的颜色编号?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2003-12-22 02:40:00 | 只看该作者
http://www.access911.net/index.asp?board=4&mode=3&recordid=71FAB31E16DC
3#
发表于 2003-12-22 08:28:00 | 只看该作者

調用调色板的方法

‘使用win API
Private Type COLORSTRUC
  lStructSize As Long
  hwnd As Long
  hInstance As Long
  rgbResult As Long
  lpCustColors As String
  Flags As Long
  lCustData As Long
  lpfnHook As Long
  lpTemplateName As String
End Type
Private Declare Function ChooseColor Lib "comdlg32.dll" Alias "ChooseColorA" _
  (pChoosecolor As COLORSTRUC) As Long

‘調用调色板
Private Sub Command0_Click()
   lngBackColor = aDialogColor()
End Sub


‘公用模組
Public Function aDialogColor() As Long
  Dim x As Long, CS As COLORSTRUC, CustColor(16) As Long
  CS.lStructSize = Len(CS)
  CS.hwnd = hWndAccessApp
  CS.Flags = CC_SOLIDCOLOR
  CS.lpCustColors = String$(16 * 4, 0)
  x = ChooseColor(CS)
  If x = 0 Then
    '發生錯誤時
    aDialogColor = RGB(254, 254, 254) ' 白色
    Exit Function
  Else
    '指定顏色
    If CS.rgbResult = RGB(255, 255, 255) Then
        aDialogColor = RGB(254, 254, 254)
    Else
        aDialogColor = CS.rgbResult
    End If
  End If
End Function

[em07]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-10-3 03:25 , Processed in 0.097466 second(s), 27 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表