![VFP 愛用者社區 首頁](templates/subSilver/images/vfps.jpg) |
VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
|
上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
janlih
註冊時間: 2003-11-04 文章: 69
第 1 樓
|
發表於: 星期五 六月 06, 2008 5:52 pm 文章主題: getcolor()函數的傳回值如何轉為RGB? |
|
|
請問各位先進:
getcolor()函數的傳回值如何轉為RGB?
如: lncolor=GETCOLOR() 選擇白色
lncolor=16777215
用哪個函數可以將 16777215 轉為 255,255,255 → 代表RGB(255,255,255) 呢? |
|
回頂端 |
|
![](templates/subSilver/images/spacer.gif) |
小賴
註冊時間: 2004-12-27 文章: 473
第 2 樓
|
發表於: 星期五 六月 06, 2008 6:27 pm 文章主題: |
|
|
考數學問題是嗎 ?
若 A = RGB(123,25,87) && A = 5708155
則 A = 5708155 = 123 + 25 * 256 + 87 * 256 ^ 2
公式 A = RGB(R, G, B) = R + 256 * G + B * 256 ^ 2
=> R = MOD(A, 256)
=> G = MOD(INT(A/256), 256)
=> B = MOD(INT(A/256^2), 256)
就不知你的數學能力如何 ? |
|
回頂端 |
|
![](templates/subSilver/images/spacer.gif) |
小賴
註冊時間: 2004-12-27 文章: 473
第 3 樓
|
發表於: 星期五 六月 06, 2008 6:57 pm 文章主題: |
|
|
有一種看起來比較專業的求法 :
X = RGB(R, G, B)
=>
R = MOD(X, 256)
G = MOD(BITRSHIFT(X, , 256)
B = BITRSHIFT(X, 16) |
|
回頂端 |
|
![](templates/subSilver/images/spacer.gif) |
nelsonchuang
註冊時間: 2003-09-04 文章: 563 來自: 臺灣
第 4 樓
|
發表於: 星期五 六月 06, 2008 8:01 pm 文章主題: |
|
|
小賴,說真的,俺也不會~ _________________ 大家好,請多指教 |
|
回頂端 |
|
![](templates/subSilver/images/spacer.gif) |
janlih
註冊時間: 2003-11-04 文章: 69
第 5 樓
|
發表於: 星期五 六月 06, 2008 9:03 pm 文章主題: |
|
|
小賴你真厲害 居然知道這個公式
我2種方法都驗証過了,都ok
原來這3原色,每一種又細分256色
故共有 256*256*256=16777216 種顏色
RGB(255,255,255)=16777215
0 - 16777215 故共有 16777216 種顏色
用小賴公式算出來
共有 255+255*256+255*256^2=16777215 種顏色
janlih 在 星期五 六月 06, 2008 9:32 pm 作了第 3 次修改 |
|
回頂端 |
|
![](templates/subSilver/images/spacer.gif) |
tigerlee39y
註冊時間: 2007-11-26 文章: 132 來自: taipei
第 6 樓
|
發表於: 星期五 六月 06, 2008 9:23 pm 文章主題: |
|
|
哇 小賴 好樣的 佩服佩服 _________________ 各取所需 各盡所能 |
|
回頂端 |
|
![](templates/subSilver/images/spacer.gif) |
|
|
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
|
|