Ristinolla

oyt

Tein ristinollan command-painikkeista joita kun klikkaa tulee X ja O. Miten saan että x ja o tulevat vuoronperään command-painikkeiden captioniin?

6

775

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Eno

      Vaihtoehtoja varmaan on satoja mutta tässä ekana mieleen tullut.

      Private Sub CommandButton1_Click()
      vaihda
      End Sub

      Function vaihda()
      If CommandButton1.Caption = "X" Then
      CommandButton1.Caption = "O"
      Else: CommandButton1.Caption = "X"
      End If
      End Function

    • -jk-

      Tee tyhjään formiin ensin command-button ja kopioi sitä sitten riittävä määrä control-arrayksi, niin tämä koodi tekee homman ja saat koulusta kympin.

      Dim Xy As Boolean
      Private Sub Form_Load()
      Xy = False
      End Sub

      Private Sub Command1_Click(Index As Integer)

      Dim Merkki As String
      If Trim(Command1(Index).Caption) "" Then
      MsgBox "Siinä on jo merkki", vbCritical, "Virhe"
      Exit Sub
      End If
      If Xy = False Then
      Merkki = "X"
      Else
      Merkki = "O"
      End If
      Command1(Index).Caption = Merkki
      Xy = Not Xy

      End Sub

    • Oyt

      Mitenkäs sen saa ilmoittamaan voitosta kun on 3 0 tai x peräkkäin?

      • periaatteessa...

        Siinä pitää vaan vertailla... Ja se tarkoittaa melkoista määrää ehtolauseita....

        Mielestäni yksi hyvä tapa voisi olla tehdä taulukko-muuttuja... Siihen tallennettaisiin kaikkien ruutujen tilanne.

        Ja sitten kun sen taulukon kohdat määrittelee tyyliin Taulu(X,Y), niin homma on periaatteessa yksinkertainen, jokainen koordinaatti käydään vain läpi kaksinkertaisella silmukalla... Vaikka näin:

        Do Until X = xx
        X = 1
        Do Until Y = yy
        Y = 1
        If Taulu(X,Y) = "X" Then
        If Taulu((X - 1), Y) = "X" And Taulu((X 1), Y)
        ....
        End If
        Loop
        Loop

        Tuohon tulee sitten melkoinen määrä eri variaatioita tuosta samasta ehtolauseesta... Tai suurinpiirtein noin minä ainakin lähtisin tuota ongelmaa purkamaan...

        JK. tuli tässä vaan mieleeni, että ehkäpä on helpointa etsiä rivejä keskikohdan mukaan, sillä jokainen ruutu käydään kuitenkin läpi, eikä siksi ole mitään mieltä tehdä suuria määriä ehtolauseita vain siksi että voisi tunnistaa rivin sen eri kohdista...


      • ehdotus

        Ai se olikin ihan alkutekijöissään tämä peli - tämä poikii aina kaikenlaista melenkiintoista.

        Mites jos napin merkinta X:llä tallentaa esimerkikis laskentataulukkoon tai muuttujaan arvon 1 ja O-merkintä tallentaa vastaavasti arvon 0.

        Sitten summataan pelialustan rivit kukin omaan muuttujaan, jonka jälkeen testataan noiden 8 muuttujan arvoa kutakin yksitellen, ja jos summa on...

        Eikös tämä ristinolla ole perinteinen kansanurheilulaji - että kuka lyhimmällä koodilla sen kasaa?


      • homma

        ...kuin heinänteko.

        Laitat vaan ne painallukset merkin mukaisesti taulukkoon kuten noissa aikaisemmissa viesteissä on mainittu.

        Sitten teet pikku proceduurin jossa on laskuri ja joka lukee viimeksi painetusta napista "pääilmansuuntiin" arvoja niin pitkälle kuin ne on samoja kuin viimeinen painallus. Jos laskuri kasvaa kahteen niin hommahan on siinä. Jos ei löydy kuin yksi samanlainen merkki vierestä niin sitten lasketaan vastakkaisten suuntien summa ja päätellään sen perusteella tuliko määrä täyteen.

        Kuten huomaat niin tämä toimii myös ristinollan johdannaisessa jossa pelialue on laajempi ja pitää saada viisi omaa merkkiä peräkkäin.

        Tein tuollaisen joskus vuonna "miekka ja kypärä" omatoimisena ohjelmoinnin harjoituksena ja voin vakuuttaa että hyvin pelitti.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Vain vasemmistolaiset rakennemuutokset pelastavat Suomen

      Kansaa on ankeutettu viimeiset 30+ vuotta porvarillisella minäminä-talouspolitiikalla, jossa tavalliselta kansalta on ot
      Maailman menoa
      27
      3425
    2. Persut huutaa taas: "kato! muslimi!"

      Persut on lyhyessä ajassa ajaneet läpi kaksi työntekijöiden oikeuksien heikennystä, joita se on aiemmin vastustanut. Pe
      Maailman menoa
      13
      2828
    3. Menen nyt koisimaan

      Ja en ehkä palaa tänne. Asia on nyt loppuunkäsitelty ja totuus tuli ilmi
      Ikävä
      28
      2504
    4. Olisiko sinulla

      Jonossa vaihtoehtoja, ehkä
      Ikävä
      42
      1927
    5. Pieni galluppi

      Mitäs lahjaa odotat joulupukilta.
      Ikävä
      53
      1779
    6. Haluaisin rakastaa sinua

      Ja olla sinulle se oikea... Rakastan sinua 💗💗💗
      Ikävä
      15
      1760
    7. onko kaivattusi

      vaarallinen? :D
      Ikävä
      45
      1626
    8. KL: Mari Hynynen avoimena - Jouni-rakkaan ja Joel-pojan välit ovat nämä!

      Mari Hynynen (ent. Perankoski) on naimisissa Jouni Hynysen kanssa. Marilla on edellisestä liitosta yksi lapsi, Joel Vola
      Suomalaiset julkkikset
      10
      1468
    9. Oletko uhriutuja?

      vaikka itse olet rääkännyt toista ja aiheuttanut ties mitä toiselle.
      Tunteet
      54
      1444
    10. Missikohu edustaa nykyajan monimuotoisuutta

      Puolesta vai vastaan, saako esittää pilkkaavasti jonkun toisen ihmisen syntyperäisiä ominaisuuksia? Kadulla vastaan tule
      Sinkut
      264
      1164
    Aihe