創作內容

12 GP

C# RandomColor

作者:貓貓風 ฅ●ω●ฅ│2017-07-24 21:52:17│巴幣:24│人氣:445
.

















這支程式算是娛樂用的,不過剛好可以練習一下色碼 R G B 的組成

應用方面可以做成像封面圖一樣的電視牆,分成一格一格的

或是霓虹燈、指定某功能達成時讓畫面變色等,其實應用也蠻多,看需求使用


  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.ComponentModel;  
  4. using System.Data;  
  5. using System.Drawing;  
  6. using System.Linq;  
  7. using System.Text;  
  8. using System.Windows.Forms;  
  9. using System.Threading;  
  10.   
  11. namespace RandomColor  
  12. {  
  13.     public partial class Form1 : Form  
  14.     {  
  15.         private int _R, _G, _B;  
  16.         private Thread _th;  
  17.         private string _color_string = "";  
  18.         private delegate void updateUI(string str, Control ctl);  
  19.         private delegate void updateUI2(Control ctl);  
  20.         //private Form1 _F = new Form1();  
  21.   
  22.         public Form1()  
  23.         {  
  24.             InitializeComponent();  
  25.         }  
  26.   
  27.         private void Form1_Load(object sender, EventArgs e)  
  28.         {  
  29.             _th = new Thread(randomColor);  
  30.             _th.Start();  
  31.         }  
  32.   
  33.         private void randomColor()  
  34.         {  
  35.             while(true)  
  36.             {  
  37.                 Random r = new Random(Guid.NewGuid().GetHashCode());  
  38.                 _R = r.Next(255);  
  39.                 _G = r.Next(255);  
  40.                 _B = r.Next(255);  
  41.                 _color_string = _R + ","+ _G + "," + _B;  
  42.                 updateForm(this);  
  43.                 updateTextBox(_color_string + "\n", richTextBox1);  
  44.                 Thread.Sleep(500);  
  45.             }  
  46.         }  
  47.   
  48.         private void updateForm(Control ctl)  
  49.         {  
  50.             if (ctl.InvokeRequired)  
  51.             {  
  52.                 updateUI2 ui = new updateUI2(updateForm);  
  53.                 ctl.Invoke(ui, ctl);  
  54.             }  
  55.             else  
  56.             {  
  57.                 ctl.BackColor = Color.FromArgb(_R, _G, _B);   
  58.             }  
  59.         }  
  60.   
  61.   
  62.         private void updateTextBox(string str, Control ctl)  
  63.         {  
  64.             if(ctl.InvokeRequired)  
  65.             {  
  66.                 updateUI ui = new updateUI(updateTextBox);  
  67.                 ctl.Invoke(ui, str, ctl);  
  68.             }  
  69.             else  
  70.             {  
  71.                 ctl.Text = str;  
  72.             }  
  73.         }  
  74.   
  75.         private void Form1_FormClosing(object sender, FormClosingEventArgs e)  
  76.         {  
  77.             _th.Abort();  
  78.             _th.Join();  
  79.         }  
  80.   
  81.   
  82.     }  
  83. }  

執行結果

每秒隨機生成一種顏色,並將色碼成現在畫面上


引用網址:https://home.gamer.com.tw/TrackBack.php?sn=3656395
All rights reserved. 版權所有,保留一切權利

相關創作

同標籤作品搜尋:涼涼風|C#

留言共 4 篇留言

雪雪
轉吧轉吧 七彩霓虹燈~[e32]

07-24 21:56

貓貓風 ฅ●ω●ฅ
對喔 [e29]07-24 21:56
Jin
我還以為你做的是影片預覽圖的那種效果[e12]

07-24 21:58

貓貓風 ฅ●ω●ฅ
那要做也可以 只是我很懶XDDD07-24 21:59
小希寶寶OuO
我的眼睛!! 太多顏色了吧!!

07-24 22:11

貓貓風 ฅ●ω●ฅ
所以事霓虹燈XD07-24 22:36
珀伽索斯(Ama)
你這和我之前設計的一部作品最初的架構很像
https://home.gamer.com.tw/creationDetail.php?sn=3632007
只不過我當時覺得可能不行,所以後來就改成吃的,
但是你的顏色比較多。

07-24 23:02

貓貓風 ฅ●ω●ฅ
有點魔術方塊的感覺~07-24 23:05
我要留言提醒:您尚未登入,請先登入再留言

12喜歡★s1234567 可決定是否刪除您的留言,請勿發表違反站規文字。

前一篇:arduino PIR ... 後一篇:C# Groupbox...

追蹤私訊切換新版閱覽

作品資料夾

sakima55詐騙季來囉?
晚上公司老闆說帳號被限額5萬,這麼晚了沒打電話傳訊息感覺詐騙,在知道對方限額是10萬下直接無視。看更多我要大聲說昨天22:42


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】