
Tiền sử lý trong C#
lượt xem 27
download

Em có đoạn code sau em không hiểu cái từ #region cho lắm bác nào có thể giả thích rõ hơn cho được không nếu có tài liều hướng dẫn về cái này Port cho xin ,cái này ít thấy sách nào viết
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Tiền sử lý trong C#
- Tiền sử lý trong C# Chào các bác Em có đoạn code sau em không hiểu cái từ #region cho lắm bác nào có thể giả thích rõ hơn cho được không nếu có tài liều hướng dẫn về cái này Port cho xin ,cái này ít thấy sách nào viết using System; using System.Collections.Generic; using System.Text; using System.Drawing.Drawing2D; using System.Drawing; using System.Windows.Forms; namespace RibbonStyle { publicclassTabPanel : System.Windows.Forms.Panel { public TabPanel() { timer1.Interval = 1; timer1.Tick += newEventHandler(timer1_Tick); this.SetStyle(ControlStyles.AllPaintingInWmPaint | ControlStyles.UserPaint | ControlStyles.DoubleBuffer, true); this.SetStyle(ControlStyles.OptimizedDoubleBuffer, true); } int X0; int XF; int Y0; int YF; int T = 8; int i_Zero = 180; int i_Sweep = 90; int X; int Y; GraphicsPath path; int D = -1; int R0 = 215; int G0 = 227; int B0 = 242; Color _BaseColor = Color.FromArgb(215, 227, 242); Color _BaseColorOn = Color.FromArgb(215, 227, 242); int i_mode = 0; //0 Entering, 1 Leaving int i_factor = 1; int i_fR = 1; int i_fG = 1; int i_fB = 1; int i_Op = 255; string S_TXT = ""; publicColor BaseColor { get { return _BaseColor; } set { _BaseColor = value; R0 = _BaseColor.R; B0 = _BaseColor.B; G0 = _BaseColor.G;
- } } publicColor BaseColorOn { get { return _BaseColorOn; } set { _BaseColorOn = value; R0 = _BaseColor.R; B0 = _BaseColor.B; G0 = _BaseColor.G; } } publicstring Caption { get { return S_TXT; } set { S_TXT = value; this.Refresh(); } } publicint Speed { get { return i_factor; } set { i_factor = value; } } publicint Opacity { get { return i_Op; } set { if (value < 256 | value > -1) { i_Op = value; } } } protectedoverridevoid OnPaint(System.Windows.Forms.PaintEventArgs e) { X0 = 0; XF = this.Width + X0 - 3;
- Y0 = 0; YF = this.Height + Y0 - 3; Point P0 = newPoint(X0, Y0); Point PF = newPoint(X0, Y0 + YF); Pen b1 = newPen(Color.FromArgb(i_Op, R0 - 18, G0 - 17, B0 - 19)); Pen b2 = newPen(Color.FromArgb(i_Op, R0 - 39, G0 - 24, B0 - 3)); Pen b3 = newPen(Color.FromArgb(i_Op, R0 + 11, G0 + 9, B0 + 3)); Pen b4 = newPen(Color.FromArgb(i_Op, R0 - 8, G0 - 4, B0 - 2)); Pen b5 = newPen(Color.FromArgb(i_Op, R0, G0, B0)); Pen b6 = newPen(Color.FromArgb(i_Op, R0 - 16, G0 - 11, B0 - 5)); Pen b8 = newPen(Color.FromArgb(i_Op, R0 + 1, G0 + +5, B0 + 3)); Pen b7 = newPen(Color.FromArgb(i_Op, R0 - 22, G0 - 10, B0)); T = 1; DrawArc3(0, 20); e.Graphics.PageUnit = GraphicsUnit.Pixel; Brush B4 = b4.Brush; e.Graphics.SmoothingMode = SmoothingMode.None; X = X0; Y = Y0; i_Zero = 180; D = 0; e.Graphics.FillPath(b5.Brush, path); LinearGradientBrush brocha = newLinearGradientBrush(P0, PF, b6.Color, b8.Color); DrawArc2(15, YF - 20); e.Graphics.FillPath(brocha, path); DrawArc2(YF - 16, 12); Pen bdown = newPen(Color.FromArgb(i_Op, R0 - 22, G0 - 11, B0)); e.Graphics.FillPath(bdown.Brush, path); T = 6; DrawArc(); DrawArc(); e.Graphics.DrawPath(b2, path); DrawArc(); e.Graphics.DrawPath(b3, path); Point P_EX = Cursor.Position; P_EX = this.PointToClient(P_EX); int ix = 10 + this.Width / 2 - S_TXT.Length * (int)this.Font.Size / 2; PointF P_TXT = newPointF(ix, this.Height - 20); Pen pen = newPen(this.ForeColor); e.Graphics.DrawString(S_TXT, this.Font, pen.Brush, P_TXT); base.OnPaint(e); } protectedoverridevoid OnMouseEnter(EventArgs e) { Point P_EX = Cursor.Position; P_EX = this.PointToClient(P_EX); if (P_EX.X > 0 | P_EX.X < this.Width | P_EX.Y > 0 | P_EX.Y < this.Height) { i_mode = 0; timer1.Start(); } base.OnMouseEnter(e); } protectedoverridevoid OnMouseLeave(EventArgs e) { Point P_EX = Cursor.Position;
- P_EX = this.PointToClient(P_EX); if (P_EX.X < 0 | P_EX.X >= this.Width | P_EX.Y < 0 | P_EX.Y >= this.Height) { i_mode = 1; timer1.Start(); } base.OnMouseLeave(e); } publicvoid DrawArc() { X = X0; Y = Y0; i_Zero = 180; D++; path = newGraphicsPath(); path.AddArc(X + D, Y + D, T, T, i_Zero, i_Sweep); i_Zero += 90; X += XF - 6; path.AddArc(X - D, Y + D, T, T, i_Zero, i_Sweep); i_Zero += 90; Y += YF - 6; path.AddArc(X - D, Y - D, T, T, i_Zero, i_Sweep); i_Zero += 90; X -= XF - 6; path.AddArc(X + D, Y - D, T, T, i_Zero, i_Sweep); i_Zero += 90; Y -= YF - 6; path.AddArc(X + D, Y + D, T, T, i_Zero, i_Sweep); } publicvoid DrawArc2(int OF_Y, int SW_Y) { X = X0 + 4; Y = Y0 + OF_Y; i_Zero = 180; path = newGraphicsPath(); path.AddArc(X + D, Y + D, T, T, i_Zero, i_Sweep); i_Zero += 90; X += XF - 8; path.AddArc(X - D, Y + D, T, T, i_Zero, i_Sweep); i_Zero += 90; Y += SW_Y; path.AddArc(X - D, Y - D, T, T, i_Zero, i_Sweep); i_Zero += 90; X -= XF - 8; path.AddArc(X + D, Y - D, T, T, i_Zero, i_Sweep); i_Zero += 90; Y -= SW_Y; path.AddArc(X + D, Y + D, T, T, i_Zero, i_Sweep); } publicvoid DrawArc3(int OF_Y, int SW_Y) { X = X0; Y = Y0 + OF_Y; i_Zero = 180; path = newGraphicsPath(); path.AddArc(X + D, Y + D, T, T, i_Zero, i_Sweep); i_Zero += 90; X += XF; path.AddArc(X - D, Y + D, T, T, i_Zero, i_Sweep); i_Zero += 90; Y += SW_Y; path.AddArc(X - D, Y - D, T, T, i_Zero, i_Sweep); i_Zero += 90; X -= XF; path.AddArc(X + D, Y - D, T, T, i_Zero, i_Sweep); i_Zero += 90; Y -= SW_Y; path.AddArc(X + D, Y + D, T, T, i_Zero, i_Sweep); } privateTimer timer1 = newTimer(); void timer1_Tick(object sender, EventArgs e) { #region Entering if (i_mode == 0) { if (System.Math.Abs(_BaseColorOn.R - R0) > i_factor) { i_fR = i_factor; } else { i_fR = 1; } if (System.Math.Abs(_BaseColorOn.G - G0) > i_factor) { i_fG = i_factor; } else { i_fG = 1; } if (System.Math.Abs(_BaseColorOn.B - B0) > i_factor) { i_fB = i_factor; } else { i_fB = 1; } if (_BaseColorOn.R < R0) { R0 -= i_fR;
- } elseif (_BaseColorOn.R > R0) { R0 += i_fR; } if (_BaseColorOn.G < G0) { G0 -= i_fG; } elseif (_BaseColorOn.G > G0) { G0 += i_fG; } if (_BaseColorOn.B < B0) { B0 -= i_fB; } elseif (_BaseColorOn.B > B0) { B0 += i_fB; } if (_BaseColorOn == Color.FromArgb(R0, G0, B0)) { timer1.Stop(); } else { this.Refresh(); } } #endregion #region Leaving if (i_mode == 1) { if (System.Math.Abs(_BaseColor.R - R0) < i_factor) { i_fR = 1; } else { i_fR = i_factor; } if (System.Math.Abs(_BaseColor.G - G0) < i_factor) { i_fG = 1; } else { i_fG = i_factor; } if (System.Math.Abs(_BaseColor.B - B0) < i_factor) { i_fB = 1; } else { i_fB = i_factor; } if (_BaseColor.R < R0) { R0 -= i_fR; } elseif (_BaseColor.R > R0) { R0 += i_fR; } if (_BaseColor.G < G0) { G0 -= i_fG; } elseif (_BaseColor.G > G0)
- { G0 += i_fG; } if (_BaseColor.B < B0) { B0 -= i_fB; } elseif (_BaseColor.B > B0) { B0 += i_fB; } if (_BaseColor == Color.FromArgb(R0, G0, B0)) { timer1.Stop(); } else { this.Refresh(); } } #endregion } protectedoverridevoid OnResize(EventArgs eventargs) { this.Refresh(); base.OnResize(eventargs); } } } __________________

CÓ THỂ BẠN MUỐN DOWNLOAD
-
80 câu trắc nghiệm công nghệ phần mềm và đáp án
11 p |
2232 |
617
-
LẬP TRÌNH C ++ QUẢN LÝ NHÀ TRỌ
12 p |
612 |
94
-
Giới thiệu về MFC Microsoft Visual C ++ 6.0
71 p |
281 |
59
-
Bài giảng Xử lý sự cố phần mềm - Bài 7 Những tiện ích và ứng dụng
13 p |
227 |
52
-
Zend Framework: Hướng dẫn cài đặt và chạy ứng dụng đầu tiên
11 p |
206 |
39
-
Trắc nghiệm lý thuyết JBE
11 p |
175 |
38
-
Sử dụng và quản lý Ubuntu dễ dàng hơn với Ubuntu Control Center
9 p |
158 |
23
-
Chương 13: Tự động hóa và quản lý tiến trình
8 p |
95 |
22
-
Đồ hoạ, đa phương tiện ( Mutilmedia) và In ấn Đồ họa phần 2
7 p |
105 |
20
-
Quản lý mạng Windows bằng Script - Phần 11: Các thủ thuật kịch bản khác .Trong
10 p |
100 |
15
-
Quản lý mạng Windows bằng Script - Phần 10: Các thủ thuật của kịch bản điều khiển xa
10 p |
98 |
13
-
Sử dụng Nautilus như FTP Client
5 p |
90 |
12
-
Thay đổi vị trí cài đặt mà không ảnh hưởng phần mềm
9 p |
86 |
10
-
History của bạn có thực sự được xóa sạch hay không?
3 p |
107 |
8
-
Phát triển ứng dụng phần 3
6 p |
82 |
6
-
Tối ưu hóa mã nguồn C/C++
17 p |
101 |
4
-
Biên dịch riêng rẽ
7 p |
52 |
2


Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn
