[C#]
mi succede una cosa strana: mi si scatena da solo l'evento click del button1
dopo un po che il programma gira e la cosa si ripete con un certo intervallo
devo cambiare l'evento magari MouseDown? o cos'altro?
Grazie
[C#]
mi succede una cosa strana: mi si scatena da solo l'evento click del button1
dopo un po che il programma gira e la cosa si ripete con un certo intervallo
devo cambiare l'evento magari MouseDown? o cos'altro?
Grazie
Ovviamente non si puo' scatenare "da solo" l'evento ...
La causa del malfunzionamento deve essere ricercata nel tuo codice, che non abbiamo a diposizione ... quindi ...
No MP tecnici (non rispondo nemmeno!), usa il forum.
intanto grazie per la risposta se c'è errore deve essere qui
namespace TavolaMagica_Liv1
{
public partial class Form1 : Form
{
private System.Windows.Forms.PictureBox[] Pic;
string[] nome = new string[11];
string[] verifica = new string[11];
string ah = "";
int[] vv = new int[3];
int[,] uu = new int[7, 7];
int n = 0;
int gu;
int tt = 0;
int pp = 0;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
this.Pic = new PictureBox[11];
for (int i = 1; i < 11; i++)
{
this.Pic[i] = new System.Windows.Forms.PictureBox();
this.Pic[i].Name = "Pic" + i.ToString();
this.Pic[i].BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.Pic[i].Click += new System.EventHandler(this.Pic_Click);
this.Controls.Add(this.Pic[i]);
}
Inizio();
CreateMyMenu();
}
private void Pic_Click(object sender, EventArgs e)
{
string ab = ((PictureBox)sender).Name;
string nu = ab.Substring(3);
gu = Convert.ToInt16(nu);
// label1.Text = gu.ToString();
tt++;
vv[tt] = gu;
for (int k = 1; k < 10; k++)
{
Pic[k].BackColor = Color.White;
}
if (tt == 1)
{
Pic[gu].BackColor = Color.Orange;
}
if (tt == 2)
{
Pic[10].Image = Pic[vv[2]].Image;
nome[10] = nome[vv[2]];
Pic[vv[2]].Image = Pic[vv[1]].Image;
nome[vv[2]] = nome[vv[1]];
Pic[vv[1]].Image = Pic[10].Image;
nome[vv[1]] = nome[10];
Pic[vv[1]].BackColor = Color.White;
tt = 0;
}
}
private void button1_Click(object sender, EventArgs e)
{
tt = 0;
Inizio();
}
L'evento click chiama la funzione Inizio() e questa funzione non l'hai mostrata ...![]()
P.S. Il codice va postato tra i tag CODE e /CODE altrimenti non si capisce molto ...
No MP tecnici (non rispondo nemmeno!), usa il forum.
funzione Inizio()
private void Inizio()
{
nome[1] = "A1";
nome[2] = "B1";
nome[3] = "C1";
nome[4] = "A2";
nome[5] = "B2";
nome[6] = "C2";
nome[7] = "A3";
nome[8] = "B3";
nome[9] = "C3";
nome[10] = "";
Pic[10].Visible = false;
string Path = Directory.GetCurrentDirectory();
n = 0;
for (int y = 1; y < 4; y++)
{
for (int x = 1; x < 4; x++)
{
n++;
Pic[n].Height = 100;
Pic[n].Width = 100;
Pic[n].Top = y * 100;
Pic[n].Left = x * 100 + 200;
Pic[n].BackColor = Color.White;
string FILE_NAME = Path + @"\" + nome[n] + ".png";
Pic[n].Image = Image.FromFile(FILE_NAME);
}
}
}
Non mi pare che ci sia qualcosa che possa attivare, per sbaglio, l'evento click del button ...
Il problema sarà da qualche altra parte ... se c'è ...
P.S. Meno male che ti avevo raccomandato di postare il codice con i tag CODE /CODE ...![]()
No MP tecnici (non rispondo nemmeno!), usa il forum.
scusa devo fare così
Code
codice....
/Code
ci sarebbe un altro pezzo di codice ma mi pare un po lungo
lo posso postare lo stesso?
Per postare il codice usa
[*code*]
[*/code*]
senza *
questa la parte restante del codice
codice:private void button2_Click(object sender, EventArgs e) { verifica[1] = nome[1] + nome[2] + nome[3]; verifica[2] = nome[4] + nome[5] + nome[6]; verifica[3] = nome[7] + nome[8] + nome[9]; verifica[4] = nome[1] + nome[4] + nome[7]; verifica[5] = nome[2] + nome[5] + nome[8]; verifica[6] = nome[3] + nome[6] + nome[9]; for (int k = 1; k < 10; k++) { Pic[k].BackColor = Color.White; } for (int k = 1; k < 7; k++) { for (int j = 1; j < 7; j++) { uu[j, k] = 0; } } for (int k = 1; k < 7; k++) { for (int j = 0; j < 6; j++) { ah = verifica[k].Substring(j, 1); if (ah == "A") { uu[1, k]++; } if (ah == "B") { uu[2, k]++; } if (ah == "C") { uu[3, k]++; } if (ah == "1") { uu[4, k]++; } if (ah == "2") { uu[5, k]++; } if (ah == "3") { uu[6, k]++; } } } pp = 0; for (int k = 1; k < 7; k++) { for (int j = 1; j < 7; j++) { if (uu[j, k] > 1) { pp = 1; // label1.Text = uu[j, k].ToString() + " " + j.ToString() + " " + k.ToString(); if (k == 1) { Pic[1].BackColor = Color.Red; Pic[2].BackColor = Color.Red; Pic[3].BackColor = Color.Red; } if (k == 2) { Pic[4].BackColor = Color.Red; Pic[5].BackColor = Color.Red; Pic[6].BackColor = Color.Red; } if (k == 3) { Pic[7].BackColor = Color.Red; Pic[8].BackColor = Color.Red; Pic[9].BackColor = Color.Red; } if (k == 4) { Pic[1].BackColor = Color.Red; Pic[4].BackColor = Color.Red; Pic[7].BackColor = Color.Red; } if (k == 5) { Pic[2].BackColor = Color.Red; Pic[5].BackColor = Color.Red; Pic[8].BackColor = Color.Red; } if (k == 6) { Pic[3].BackColor = Color.Red; Pic[6].BackColor = Color.Red; Pic[9].BackColor = Color.Red; } } } } if (pp == 1) { MessageBox.Show("Soluzione errata"); } else { MessageBox.Show("Soluzione esatta"); } }