資源簡介
王紅梅的算法書中“棋盤覆蓋”算法的C#可視化實現 代碼可以運行

代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Data;
using?System.Drawing;
using?System.Text;
using?System.Windows.Forms;
namespace?qiPanFuGaiTemp
{
????public?partial?class?Form1?:?Form
????{
????????private?bool?calcFlag?=?false;//棋盤顏色是否已經計算過了
????????private?int?i?=?1;//棋盤上色的時候用于計數
????????private?int?size?=?4;//棋盤的邊長?默認是4
????????private?int?ptx?=?1;//特殊方塊的x坐標
????????private?int?pty?=?1;//特殊方塊的y坐標
????????private?float?unit?=?100;//每一個小格子的邊長
????????private?int?colorCode?=?0;
????????private?PointF[]?chessboardColor;//從chessboardColor[1]開始?每三個一組?是同一個L?([1][2][3]存儲著同一個L的坐標)
????????private?Graphics?graphics;
????????private?Brush[]?brushes?={?Brushes.Crimson??Brushes.ForestGreen?Brushes.Chartreuse?Brushes.IndianRed?Brushes.Aqua?Brushes.BlueViolet?Brushes.Green?Brushes.GreenYellowBrushes.BurlyWoodBrushes.Goldenrod};
????????private?const?float?CHESSBOARD_SIZE?=?512;
????????public?Form1()
????????{
????????????InitializeComponent();
????????????graphics?=?this.CreateGraphics();//得到這個窗口的的圖像類
????????????textBoxSize.Tag?=?true;
????????????textBoxX.Tag?=?true;
????????????textBoxY.Tag?=?true;
????????????chessboardColor?=?new?PointF[size?*?size];
????????????chessboardColor[0]?=?new?PointF(11);//第0種顏色?
????????????timer1.Enabled?=?false;
????????????this.buttonPrev.Enabled?=?false;
????????????this.buttonNext.Enabled?=?false;
????????????
????????}
????????private?void?Form1_Shown(object?sender?EventArgs?e)//初始化form視圖
????????{
????????????drawframe();
????????}
????????//??有效參數判斷方法:
????????//??剛開始設定默認值?并且讓3個textBox都為true。之后用2個textChange函數分別檢測size和?x?y
????????//??一旦輸入不符合要求就變化背景色?禁用開關。一旦符合要求?就檢測3個是否都合格了?合格就繪制出棋盤框架
????????//??3個textBox都有數字限定?valided?顯示?error?data?和?進入若是error?data?就置空
????????private?void?textBox_KeyPress(object?sender?KeyPressEventArgs?e)//負責3個textbox只能輸入數字
????????{
????????????TextBox?lb?=?(TextBox)sender;
????????????if?((e.KeyChar?48?||?e.KeyChar?>?57)?&&?e.KeyChar?!=?8)
????????????{
????????????????e.Handled?=?true;
????????????}
????????}
????????private?void?textBox_MouseClick(object?sender?MouseEventArgs?e)//負責3個textBox后?如果是error?data?就置空
????????{
????????????TextBox?tb?=?(TextBox)sender;
????????????if(tb.Text==“error?data“)
????????????????tb.Text?=?““;
????????}
????????private?void?textBox_Validated(object?sender?EventArgs?e)//只負責3個TextBox?根據?tag?顯示error?data?和背景色
????????{
????????????TextBox?tb?=?(TextBox)sender;
????????????if?((bool)tb.Tag?==?false)
????????????{
????????????????tb.Text?=?“error?data“;
????????????????tb.BackColor?=?Color.Fuchsia;
????????????}
????????}
???????
????????private?void?textBoxSize_TextChanged(object?sender?EventArgs?e)//負責當size變為有效數字的時候??判斷三個text是否都有效了?
????????{
????????????this.buttonPrev.Enabled?=?false;
????????????this.buttonNext.Enabled?=?false;
????????????calcFlag?=?false;
????????????TextBox?tb?=?(TextBox)sender;
??
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2012-05-12?02:00??棋盤覆蓋\
?????文件????????1406??2012-05-12?01:27??棋盤覆蓋\down2.gif
?????文件????????1428??2012-05-12?01:54??棋盤覆蓋\end.gif
?????文件????????1403??2012-05-12?01:28??棋盤覆蓋\end2.gif
?????文件????????1438??2012-05-12?01:51??棋盤覆蓋\nex.gif
?????文件????????1436??2012-05-12?01:58??棋盤覆蓋\pre.gif
?????文件????????1395??2012-05-12?01:29??棋盤覆蓋\pre2.gif
?????目錄???????????0??2012-05-20?21:43??棋盤覆蓋\qiPanFuGaiTemp\
?????文件?????????931??2012-04-08?22:42??棋盤覆蓋\qiPanFuGaiTemp.sln
?????文件???????19968??2012-05-20?21:44??棋盤覆蓋\qiPanFuGaiTemp.suo
?????目錄???????????0??2012-05-04?23:09??棋盤覆蓋\qiPanFuGaiTemp\bin\
?????目錄???????????0??2012-04-08?22:58??棋盤覆蓋\qiPanFuGaiTemp\bin\Debug\
?????文件???????32768??2012-05-20?21:43??棋盤覆蓋\qiPanFuGaiTemp\bin\Debug\qiPanFuGaiTemp.exe
?????文件???????32256??2012-05-20?21:43??棋盤覆蓋\qiPanFuGaiTemp\bin\Debug\qiPanFuGaiTemp.pdb
?????文件????????5632??2005-12-08?14:51??棋盤覆蓋\qiPanFuGaiTemp\bin\Debug\qiPanFuGaiTemp.vshost.exe
?????目錄???????????0??2012-05-04?23:09??棋盤覆蓋\qiPanFuGaiTemp\bin\Release\
?????文件???????32768??2012-05-04?23:18??棋盤覆蓋\qiPanFuGaiTemp\bin\Release\qiPanFuGaiTemp.exe
?????文件???????30208??2012-05-04?23:18??棋盤覆蓋\qiPanFuGaiTemp\bin\Release\qiPanFuGaiTemp.pdb
?????文件????????5632??2005-12-08?14:51??棋盤覆蓋\qiPanFuGaiTemp\bin\Release\qiPanFuGaiTemp.vshost.exe
?????文件???????13485??2012-05-20?21:43??棋盤覆蓋\qiPanFuGaiTemp\Form1.cs
?????文件???????10180??2012-05-20?21:43??棋盤覆蓋\qiPanFuGaiTemp\Form1.Designer.cs
?????文件???????13067??2012-05-20?21:43??棋盤覆蓋\qiPanFuGaiTemp\Form1.resx
?????目錄???????????0??2012-05-04?23:09??棋盤覆蓋\qiPanFuGaiTemp\obj\
?????目錄???????????0??2012-05-20?21:43??棋盤覆蓋\qiPanFuGaiTemp\obj\Debug\
?????文件?????????842??2012-05-20?21:43??棋盤覆蓋\qiPanFuGaiTemp\obj\Debug\qiPanFuGaiTemp.csproj.GenerateResource.Cache
?????文件???????32768??2012-05-20?21:43??棋盤覆蓋\qiPanFuGaiTemp\obj\Debug\qiPanFuGaiTemp.exe
?????文件????????5167??2012-05-20?21:43??棋盤覆蓋\qiPanFuGaiTemp\obj\Debug\qiPanFuGaiTemp.Form1.resources
?????文件???????32256??2012-05-20?21:43??棋盤覆蓋\qiPanFuGaiTemp\obj\Debug\qiPanFuGaiTemp.pdb
?????文件?????????180??2012-04-08?22:58??棋盤覆蓋\qiPanFuGaiTemp\obj\Debug\qiPanFuGaiTemp.Properties.Resources.resources
?????目錄???????????0??2012-04-08?23:16??棋盤覆蓋\qiPanFuGaiTemp\obj\Debug\Refactor\
?????目錄???????????0??2012-04-08?22:42??棋盤覆蓋\qiPanFuGaiTemp\obj\Debug\TempPE\
............此處省略16個文件信息
- 上一篇:數字圖像處理圖像壓縮源程序
- 下一篇:c# 基于BP算法的貝葉斯網絡參數學習
評論
共有 條評論