Új hozzászólás Aktív témák
-
trisztan94
őstag
Sziasztok!
1-2 hónapja tanulgatom a C#-ot, jelenleg egy memóriajátékot akarok írni, de valamit nem tudok, és sehogy sem tudok rájönni. A program lényege, (gondolom mindenki tudja, hogy mi egy memóriajáték, de azért leírom
) hogy van egy 4x4-es panelem feltöltve gombokkal, amik feketék alaphelyzetben. Rákattintasz, fehér lesz és kidob egy számot. Eddig minden klafa, tök jól működik, viszont elakadtam ott, hogy leellenőrizze a program, hogy ha a második kattintással felhozott gomb értéke nem egyezik az előzővel, akkor állítsa vissza feketére, ha egyezik, akkor meg maradjon úgy. Több órája ezzel sz@rakodok, sehogy sem tudok rájönni.Itt a kód:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Memória
{
public partial class Form1 : Form
{
int lepesek = 0;
int talalatok = 0;
Button[] gombok = new Button[16];
Random r = new Random();
int elsogomb;
public Form1()
{
InitializeComponent();
}
private void but_new_Click(object sender, EventArgs e)
{
for (int i = 0; i < 16; i++)
{
gombok[i] = new Button();
gombok[i].Parent = panel;
gombok[i].Width = panel.Width / 4;
gombok[i].Height = panel.Height / 4;
gombok[i].Left = (i % 4) * (panel.Width / 4);
gombok[i].Top = (i / 4) * (panel.Height / 4);
gombok[i].BackColor = Color.Black;
gombok[i].Click += gombertek;
}
for (int i = 0; i < 8; i++)
{
for (int j = 0; j < 2; j++)
{
bool lerakva = false;
while(!lerakva)
{
int mivanmi = r.Next(0,16);
if (gombok[mivanmi].Tag==null)
{
lerakva = true;
gombok[mivanmi].Tag = i+1;
}
}
}
}
}
void gombertek(object sender, EventArgs e)
{
(sender as Button).Text = (sender as Button).Tag.ToString();
(sender as Button).Enabled = false;
(sender as Button).BackColor = Color.White;
elsogomb = int.Parse((sender as Button).Text);
}
void ugyanaz(object sender, EventArgs e)
{
}
private void but_exit_Click(object sender, EventArgs e)
{
this.Close();
}
}
}Köszönöm előre is

Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Autós topik
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Milyen egeret válasszak?
- Visszafogott, vékony és vezetékmentes ProArt billentyűzet jött az ASUS-tól
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Hosszú premier előzetest kapott az Arknights: Endfield
- Elektromos autók - motorok
- Okos Otthon / Smart Home
- OTP Bank topic
- Samsung Galaxy Felhasználók OFF topicja
- További aktív témák...
- Gainward RTX 3080 10GB GDDR6X Phoenix
- 256 GB mSATA SSD eladóak (Hynix, Sandisk, Samsung)
- Latitude 7450 14" FHD+ IPS érintő Ultra 5 135U 16GB 256GB NVMe magyarított vbill ujjolv IR kam gar
- Óriás! Gamer PC-Számítógép! Csere-Beszámítás! R5 5600XT / RTX 3070 8GB / 16GB DDR4 / 1TB SSD Nvme.
- Apple iPhone 12 Mini 64GB Fehér Színben Állapot: Újszerű Karcmentes állapot 6 Hónap Garanciával
- Újszerű Dell XPS 13 9310 - 13.4" FHD+ i7-1185G7 - 16GB - 1TB - Win11 PRO
- Tablet felvásárlás!! Apple iPad, iPad Mini, iPad Air, iPad Pro
- GYÖNYÖRŰ iPhone 11 128GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS4355
- Eladó retro HiFi-k és erösítők/hangfalak
- BESZÁMÍTÁS! Inno3D iChill X3 RTX 3080 Ti 12GB videokártya garanciával hibátlan működéssel
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest
) hogy van egy 4x4-es panelem feltöltve gombokkal, amik feketék alaphelyzetben. Rákattintasz, fehér lesz és kidob egy számot. Eddig minden klafa, tök jól működik, viszont elakadtam ott, hogy leellenőrizze a program, hogy ha a második kattintással felhozott gomb értéke nem egyezik az előzővel, akkor állítsa vissza feketére, ha egyezik, akkor meg maradjon úgy. Több órája ezzel sz@rakodok, sehogy sem tudok rájönni.

