ข่าว:

ทดลองใช้งานบอร์ดตะลุง ที่อยู่ในขั้นตอนการกู้คืนข้อมูล เบื้องต้นมีแต่กระทู้ (ข้อความ) กำลังกู้รูปภาพ ไฟล์แนบต่าง ๆ คาดว่าจะทยอยสมบูรณ์ภายในไม่ช้า

Main Menu

รับสอนเขียนโปรแกรม VB.NET

เริ่มโดย Natakan Klaykun, 14:25 น. 25 ก.ย 59

Natakan Klaykun

วิธีสร้าง effect ไล่สีสวยๆ โดยใช้ vb.net
วัตถุประสงค์
   - เพื่อให้เห็นว่า loop กับ if -else ก็สามารถ ทำอะไรสวยๆ ได้
   - เพื่อเป็น idea สำหรับ ทำ animation หรือ โปรแกรม อื่นๆ โดยใช้ vb.net
step 1
create project using vb.netสร้างโปรเจ็คโดยการ click ที่ไฟล์ > new Project
> เลือก Visual Basic
> เลือก Windows Form Application
> ตั้งชื่อ อะไรก็ได้
ตอนนี้ จะเห็น ว่า มีหน้าจอ form ขึ้นมา click ที่ Form เลือก ตรงหน้าต่าง property ถ้าหน้าต่าง Property หายไปให้ไปที่
menu view > property ทำ Formให้ใหญ่ๆ แล้ว กด ตรง Event รูปสายฟ้า แล้ว ก็ Paint
มันจะสร้าง sub ขึ้นมาให้ 1 ตัว ชื่อ Form1_paintใช้สำหรับวาดรูปต่างๆ ลงไป
ทดลองเขียน code วาด สี่เหลี่ยมSolidBrush คือ ให้เติมสีสีเดียว Color.FromARGB()คือ กำหนดสีให้ Brush new Rectangle คือ สร้างสี่เหลี่ยมขึ้นมา มุมซ้ายบนอยูที่ (50, 50) ขนาด กว้าง 100 ยาว 100ทดลอง run ดูสามารถอ่านเพิ่มเติ่มได้ที่ MSDN
http://msdn.microsoft.com/en-us/library/yysstebh.aspx
ผู้เรียน ที่มาเรียนที่ expert-programming-tutor.com ต้องสามารถ อ่าน และหาขอมูล เกี่ยวกับ framework หรือว่า Lib. ต่างๆ ได้ด้วยตัวเอง :) เพาะว่าเป็นสิ่งสำคัญซึ่งเราสอนตั้งแต่ครั้งๆแรกๆ ที่มาเรียนแล้ว
step ที่ 2
ประกาศตัวแปล 2 ตัว x,yให้  x=0 y=0
สร้าง loop สองชั้น เปนแถว กับแต่ละ สี่เหลี่ยมในแถวเราจะสร้าง สี่เหลี่ยมเล็กๆ 100*100 ช่อง
ใช้ num แทน 100 เพื่อง่ายต่อการแก่ไขอย่าลืมว่า loop มักจะมีสามส่วน ค่าเริ่มต้น -- condition -- การเพิ่มค่าหรือลดค่าถ้าใครงง LOOP ให้มาเรียน J103หรือ  J104 หรือ CS101 หรือ  CS 102 หรือ C101 กับทาง Expert-Programming-Tutor ก่อนนำคำสั่งวาดรูปไปใส่ใน LOOPแก้ x,y, width ,height
Me.width คือ ขนาดของ windows ตามกว้าง
Me.height คือขนาดของ Windows ตามสูงนี่คือผลลัพท์step ต่อไปเปลี่ยนสีเราจะสังเกตุเห็นเส้นสีขาวที่เกิดจากตอน form ขยาย ขนาด ให้ไปเพิ่ม
Event > Size Change ที่หน้า Eventrefresh() คือสั่งให้ วาดใหม่ทุกครั้งที่ size เปรียนให้ดูที่ MSDN http://msdn.microsoft.com/en-us/library/system.windows.forms.form.aspx
step ต่อ มา double click ลงบน form เพื่อสร้าง Event Form load
Me.WindowState = FormWindowState.Maximized คือให้เปิดมาแล้วเต็มจอเลย
step ต่อไปสร้าง การไล่สี
โดยใช้ timerกด ToolBox > Component > TimerDouble Click ที่บน Timerทุกๆ ครั้ง ที่ถึง เวลา ให้ วาดหน้สจอใหม่ทุกครั้งให้มีตัวแปรเพิ่มตัวหนึ่งสำหรับ เปลี่ยนสี ทำเป็น Global variableให้มีตัวแปร stateไว้ คอยดูว่าตอนนี้ นับขึ้นหรือนับลงถ้านับจนสุดแล้ว (สีสุดที่255) ให้เปลี่ยน ทิศทางการนับสั่ง timer start ใน Form_loadและ สั่ง ว่า ให้เว้นเวลา นานแค่ไหนด้วย
Timer1.Interval = 20 หมายถึงให้เว้น 20 ms
เกิดเหตุการกระพิบให้ใช้ double buffer ด้วย
นำค่า xx ไปใช้ตรงสีe.Graphics.FillRectangle(New SolidBrush(Color.FromArgb(xx, x * 255 / num, y * 255 / num)), New Rectangle(x * Me.Width / num, y * Me.Height / num, Me.Width / num, Me.Height / num))ปรับให้เป็น ไม่มีกรอบ     Me.FormBorderStyle = Windows.Forms.FormBorderStyle.Noneและ ให้กด ESC เพื่อ จบ โปรแกรมMe.Close()
หวังว่า จะสนุกกับการเขียนโปรแกรมครับ
Expert-programming-tutor.com
0853507540