Ú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!
- World of Tanks - MMO
- A fociról könnyedén, egy baráti társaságban
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Azonnali notebookos kérdések órája
- Építő/felújító topik
- PROHARDVER! feedback: bugok, problémák, ötletek
- Windows 11
- Napelem
- Milyen autót vegyek?
- SD memóriakártyák (SD, SDHC, SDXC, micro SD)
- További aktív témák...
- Acer TravelMate P214 i3-1115G4 12GB 256GB 14" FHD 1év garancia
- Apple iPhone 15 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- iPhone 15 Pro Max 256GB 100% (1év Garancia)
- Keresünk iPhone 13/13 Mini/13 Pro/13 Pro Max
- SZÁLCSISZOLT FÉM HATÁSÚ Dell Latitude 5420 14" Touchscreen i5-1135G7 16GB 256GB 1 év garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
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.

