diff --git a/Paint_2/ColorPicker.Designer.cs b/Paint_2/ColorPicker.Designer.cs
index 0db12e2..ad7a56b 100644
--- a/Paint_2/ColorPicker.Designer.cs
+++ b/Paint_2/ColorPicker.Designer.cs
@@ -28,6 +28,7 @@
///
private void InitializeComponent()
{
+ this.components = new System.ComponentModel.Container();
this.pbxColor = new System.Windows.Forms.PictureBox();
this.pbxSelectedColor = new System.Windows.Forms.PictureBox();
this.nupRed = new System.Windows.Forms.NumericUpDown();
@@ -41,6 +42,7 @@
this.label2 = new System.Windows.Forms.Label();
this.label3 = new System.Windows.Forms.Label();
this.label4 = new System.Windows.Forms.Label();
+ this.tmrRefresh = new System.Windows.Forms.Timer(this.components);
((System.ComponentModel.ISupportInitialize)(this.pbxColor)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pbxSelectedColor)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.nupRed)).BeginInit();
@@ -160,7 +162,8 @@
this.pbxSliderRed.Size = new System.Drawing.Size(255, 30);
this.pbxSliderRed.TabIndex = 21;
this.pbxSliderRed.TabStop = false;
- this.pbxSliderRed.Click += new System.EventHandler(this.pbxSliderRed_Click);
+ this.pbxSliderRed.MouseDown += new System.Windows.Forms.MouseEventHandler(this.SliderMouseDown);
+ this.pbxSliderRed.MouseUp += new System.Windows.Forms.MouseEventHandler(this.SliderMouseUp);
//
// pbxSliderSaturation
//
@@ -170,7 +173,8 @@
this.pbxSliderSaturation.Size = new System.Drawing.Size(30, 255);
this.pbxSliderSaturation.TabIndex = 22;
this.pbxSliderSaturation.TabStop = false;
- this.pbxSliderSaturation.Click += new System.EventHandler(this.pbxSliderSaturation_Click);
+ this.pbxSliderSaturation.MouseDown += new System.Windows.Forms.MouseEventHandler(this.SliderMouseDown);
+ this.pbxSliderSaturation.MouseUp += new System.Windows.Forms.MouseEventHandler(this.SliderMouseUp);
//
// label1
//
@@ -208,6 +212,11 @@
this.label4.TabIndex = 26;
this.label4.Text = "A";
//
+ // tmrRefresh
+ //
+ this.tmrRefresh.Interval = 1;
+ this.tmrRefresh.Tick += new System.EventHandler(this.tmrRefresh_Tick);
+ //
// ColorPicker
//
this.AutoScaleDimensions = new System.Drawing.SizeF(10F, 22F);
@@ -266,5 +275,6 @@
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.Label label4;
+ private System.Windows.Forms.Timer tmrRefresh;
}
}
\ No newline at end of file
diff --git a/Paint_2/ColorPicker.cs b/Paint_2/ColorPicker.cs
index 7a15069..de58a0b 100644
--- a/Paint_2/ColorPicker.cs
+++ b/Paint_2/ColorPicker.cs
@@ -147,12 +147,19 @@ namespace Paint_2
}
private void pbxSliderRed_Click(object sender, EventArgs e)
{
- SelectedColor = Color.FromArgb(SelectedColor.A,pbxSliderRed.PointToClient(MousePosition).X,SelectedColor.G,SelectedColor.B);
+ int mouseX = pbxSliderRed.PointToClient(MousePosition).X;
+ if (mouseX >= 0 && mouseX <= 255)
+ {
+ SelectedColor = Color.FromArgb(SelectedColor.A, mouseX, SelectedColor.G, SelectedColor.B);
+ }
RefreshUi();
}
private void pbxSliderSaturation_Click(object sender, EventArgs e)
{
- SelectedColor = Color.FromArgb(pbxSliderSaturation.PointToClient(MousePosition).Y, SelectedColor.R, SelectedColor.G, SelectedColor.B);
+ int mouseY = pbxSliderSaturation.PointToClient(MousePosition).Y;
+ if (mouseY >= 0 && mouseY <= 255) {
+ SelectedColor = Color.FromArgb(mouseY, SelectedColor.R, SelectedColor.G, SelectedColor.B);
+ }
RefreshUi();
}
public static Color HexToColor(string rgb)
@@ -258,5 +265,21 @@ namespace Paint_2
{
main.sketch.ChangePaintToolColor(SelectedColor);
}
+
+ private void tmrRefresh_Tick(object sender, EventArgs e)
+ {
+ pbxSliderSaturation_Click(sender, e);
+ pbxSliderRed_Click(sender,e);
+ }
+
+ private void SliderMouseDown(object sender, MouseEventArgs e)
+ {
+ tmrRefresh.Enabled = true;
+ }
+
+ private void SliderMouseUp(object sender, MouseEventArgs e)
+ {
+ tmrRefresh.Enabled = false;
+ }
}
}
diff --git a/Paint_2/ColorPicker.resx b/Paint_2/ColorPicker.resx
index 1af7de1..f1a0b40 100644
--- a/Paint_2/ColorPicker.resx
+++ b/Paint_2/ColorPicker.resx
@@ -117,4 +117,7 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ 17, 17
+
\ No newline at end of file