Từ 1 tới 8 trên tổng số 8 kết quả

Đề tài: Chạy vòng lặp cho đến khi bấm button thì dừng lại

  1. #1
    Ngày gia nhập
    09 2008
    Nơi ở
    Nơi nào đó có em
    Bài viết
    87

    Lightbulb Chạy vòng lặp cho đến khi bấm button thì dừng lại

    Mình đang viết 1 chương trình kiểu slot machine.Mình có 2 button là Quay và Dừng,3 label để hiển thị số.Khi mình bấm Quay thì cả 3 label chạy từ 1 đến 9 liên tục.Bấm Dừng thì các con số dừng lại và hiển thị trên 3 label đó.

    Visual C# Code:
    1.     private void Button1_Click(System.Object sender, System.EventArgs e) //Button Quay
    2.     {
    3.         Label2.Text = "0";
    4.         Label1.Text = "0";
    5.         Label3.Text = "0";
    6.         SpinCount = 0;
    7.         Timer1.Enabled = true;
    8.         Timer1.Interval = 15;
    9.         if ((Label2.Text == "7" & Label1.Text == "7" & Label3.Text == "7")) {
    10.             Interaction.Beep();
    11.         }
    12.     }

    Visual C# Code:
    1. private void Timer1_Tick(System.Object sender, System.EventArgs e)
    2.     {
    3.         VBMath.Randomize();
    4.         SpinCount = SpinCount + 1;
    5.         if (SpinCount < 100) { //Mình nghĩ vấn đề là ở chỗ này nhưng không biết làm thế nào
    6.             SpinReel_1 = Conversion.Int((VBMath.Rnd() * 10));
    7.             SpinReel_2 = Conversion.Int((VBMath.Rnd() * 10));
    8.             SpinReel_3 = Conversion.Int((VBMath.Rnd() * 10));
    9.             SpinReels();
    10.         } else {
    11.             Timer1.Enabled = false;
    12.         }
    13.     }
    Bây giờ mình muốn khi nào mình bấm Dừng thì các con số dừng lại và hiển thị trên label thì phải làm thế nào?

  2. #2
    Ngày gia nhập
    08 2009
    Nơi ở
    TP Cần Thơ - Lộ 91B
    Bài viết
    212

    - Không hiểu sao bạn lại hỏi vấn đề này trong khi bạn là tác giả của các đoạn Code ở trên
    - Thui thì bạn làm thế này
    Code:
    private void ButtonStop_Clicked(object sender, EvenAgrs e){
            Timer.Enable = false;
            label_1.Text = SpinReel_1.ToString();
            label_2.Text = SpinReel_2.ToString();
            label_3.Text = SpinReel_3.ToString();
    }

  3. #3
    Ngày gia nhập
    09 2008
    Nơi ở
    Nơi nào đó có em
    Bài viết
    87

    Vấn đề là nếu biến SpinCount =100 thì nó vẫn tự dừng lại mà bạn

  4. #4
    Ngày gia nhập
    08 2009
    Nơi ở
    TP Cần Thơ - Lộ 91B
    Bài viết
    212

    Trích dẫn Nguyên bản được gửi bởi manhhung1109 Xem bài viết
    Vấn đề là nếu biến SpinCount =100 thì nó vẫn tự dừng lại mà bạn
    - Timer của bạn là chạy cho đến khi nào bấm Button dừng . Vậy bạn để biến SpinCount để bắt trường hợp dừng trong Timer nữa làm chi

  5. #5
    Ngày gia nhập
    09 2008
    Nơi ở
    Nơi nào đó có em
    Bài viết
    87

    Mình thật đầu đất.Tặng các bạn code của Slot Machine đơn giản.Thi thoảng lôi ra quay chơi
    Visual C# Code:
    1. using Microsoft.VisualBasic;
    2. using System;
    3. using System.Collections.Generic;
    4. using System.ComponentModel;
    5. using System.Data;
    6. using System.Drawing;
    7. using System.Linq;
    8. using System.Text;
    9. using System.Windows.Forms;
    10.  
    11. namespace Lucky7CS
    12. {
    13.     public partial class Form1 : Form
    14.     {
    15.         public Form1()
    16.         {
    17.             InitializeComponent();
    18.         }
    19.         public int SpinReel_1;
    20.         public int SpinReel_2;
    21.         public int SpinReel_3;
    22.         private void SpinReels()
    23.         {
    24.             switch (SpinReel_1)
    25.             {
    26.                 case 0 | 1:
    27.                     Label2.Text = "1";
    28.                     break;
    29.                 case 2:
    30.                     Label2.Text = "2";
    31.                     break;
    32.                 case 3:
    33.                     Label2.Text = "3";
    34.                     break;
    35.                 case 4:
    36.                     Label2.Text = "4";
    37.                     break;
    38.                 case 5:
    39.                     Label2.Text = "5";
    40.                     break;
    41.                 case 6:
    42.                     Label2.Text = "6";
    43.                     break;
    44.                 case 7:
    45.                     Label2.Text = "7";
    46.                     break;
    47.                 case 8:
    48.                     Label2.Text = "8";
    49.                     break;
    50.                 case 9:
    51.                     Label2.Text = "9";
    52.                     break;
    53.             }
    54.  
    55.             switch (SpinReel_2)
    56.             {
    57.                 case 0 | 1:
    58.                     Label1.Text = "1";
    59.                     break;
    60.                 case 2:
    61.                     Label1.Text = "2";
    62.                     break;
    63.                 case 3:
    64.                     Label1.Text = "3";
    65.                     break;
    66.                 case 4:
    67.                     Label1.Text = "4";
    68.                     break;
    69.                 case 5:
    70.                     Label1.Text = "5";
    71.                     break;
    72.                 case 6:
    73.                     Label1.Text = "6";
    74.                     break;
    75.                 case 7:
    76.                     Label1.Text = "7";
    77.                     break;
    78.                 case 8:
    79.                     Label1.Text = "8";
    80.                     break;
    81.                 case 9:
    82.                     Label1.Text = "9";
    83.                     break;
    84.             }
    85.  
    86.             switch (SpinReel_3)
    87.             {
    88.                 case 0 | 1:
    89.                     Label3.Text = "1";
    90.                     break;
    91.                 case 2:
    92.                     Label3.Text = "2";
    93.                     break;
    94.                 case 3:
    95.                     Label2.Text = "3";
    96.                     break;
    97.                 case 4:
    98.                     Label3.Text = "4";
    99.                     break;
    100.                 case 5:
    101.                     Label3.Text = "5";
    102.                     break;
    103.                 case 6:
    104.                     Label3.Text = "6";
    105.                     break;
    106.                 case 7:
    107.                     Label3.Text = "7";
    108.                     break;
    109.                 case 8:
    110.                     Label3.Text = "8";
    111.                     break;
    112.                 case 9:
    113.                     Label3.Text = "9";
    114.                     break;
    115.             }
    116.         }
    117.  
    118.         private void Button1_Click(object sender, EventArgs e)
    119.         {
    120.             Label2.Text = "0";
    121.             Label1.Text = "0";
    122.             Label3.Text = "0";
    123.             Timer1.Enabled = true;
    124.             Timer1.Interval = 15;
    125.             if ((Label2.Text == "7" & Label1.Text == "7" & Label3.Text == "7"))
    126.             {
    127.                 Interaction.Beep();
    128.             }
    129.         }
    130.         private void Button2_Click(object sender, EventArgs e)
    131.         {
    132.             Timer1.Enabled = false;
    133.         }
    134.  
    135.         private void timer1_Tick(object sender, EventArgs e)
    136.         {            
    137.             VBMath.Randomize();
    138.             SpinReel_1 = Convert.ToInt32((VBMath.Rnd() * 10));
    139.             SpinReel_2 = Convert.ToInt32((VBMath.Rnd() * 10));
    140.             SpinReel_3 = Convert.ToInt32((VBMath.Rnd() * 10));
    141.             SpinReels();
    142.         }
    143.     }
    144. }

  6. #6
    Ngày gia nhập
    10 2010
    Nơi ở
    Biên Hòa
    Bài viết
    562

    Mặc định Chạy vòng lặp cho đến khi bấm button thì dừng lại

    Trích dẫn Nguyên bản được gửi bởi manhhung1109 Xem bài viết
    Vấn đề là nếu biến SpinCount =100 thì nó vẫn tự dừng lại mà bạn
    nhưng cái Timer bạn chưa disable thì , timer sẽ chạy hoài.
    Còn nếu bạn muốn dừng theo điều kiện SpinCount = 100 thì bạn thêm 1 dòng nữa

    Visual C# Code:
    1. if (SpinCount < 100) {
    2.             SpinReel_1 = Conversion.Int((VBMath.Rnd() * 10));
    3.             SpinReel_2 = Conversion.Int((VBMath.Rnd() * 10));
    4.             SpinReel_3 = Conversion.Int((VBMath.Rnd() * 10));
    5.             SpinReels();
    6.            Timer1.Enabled = false // them dong này

  7. #7
    Ngày gia nhập
    06 2011
    Bài viết
    121

    Trích dẫn Nguyên bản được gửi bởi kenturo Xem bài viết
    nhưng cái Timer bạn chưa disable thì , timer sẽ chạy hoài.
    Còn nếu bạn muốn dừng theo điều kiện SpinCount = 100 thì bạn thêm 1 dòng nữa

    Visual C# Code:
    1. if (SpinCount < 100) {
    2.             SpinReel_1 = Conversion.Int((VBMath.Rnd() * 10));
    3.             SpinReel_2 = Conversion.Int((VBMath.Rnd() * 10));
    4.             SpinReel_3 = Conversion.Int((VBMath.Rnd() * 10));
    5.             SpinReels();
    6.            Timer1.Enabled = false // them dong này
    bạn cứ
    Timer1.Enabled = false;
    Timer1.Enabled = true;
    zậy thui

  8. #8
    Ngày gia nhập
    09 2008
    Nơi ở
    Nơi nào đó có em
    Bài viết
    87

    Cám ơn các bạn.Mình làm được rồi.

Các đề tài tương tự

  1. Kỹ thuật C++ Nhập và gán 1 kí tự trong vòng lặp sao cho khi không nhập kí tự thì vòng lặp lại chạy tiếp.
    Gửi bởi note194 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 3
    Bài viết cuối: 12-08-2013, 09:11 PM
  2. Bài tập C Tạo ra n vòng lặp con lồng vào trong rồi chạy lại từ đầu nhỉ???
    Gửi bởi itbk trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 9
    Bài viết cuối: 14-11-2012, 10:32 PM
  3. Vòng lặp While trong BUTTON??
    Gửi bởi nam_dkn trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 10
    Bài viết cuối: 25-02-2009, 02:01 PM
  4. Hiện tượng vòng for đang chạy tự dưng bị ngắt
    Gửi bởi The_languages_of_C trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 13
    Bài viết cuối: 25-05-2008, 01:37 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn