Usuário com melhor resposta
preciso detectar o controle clicado

Pergunta
-
Respostas
-
resolvido picture.Click += (s, e) => { MessageBox.Show(picture.Name.ToString()); };
- Marcado como Resposta IgorFKModerator quarta-feira, 30 de outubro de 2019 12:52
Todas as Respostas
-
Boa tarde, tudo bem?
Existe um evento específico para isto no C# que é Control.Click, onde Control pode ser qualquer um dos itens que você citou acima.
Nesta documentação está detalhado o procedimento para o evento e uma tabela com os Controls aos quais este evento se aplica e com quais tipos de click:
https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.control.click?view=netframework-4.8
Espero que ajude. Atenciosamente,
Igor F. Kunrath
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
- Editado IgorFKModerator segunda-feira, 28 de outubro de 2019 16:54
-
bem eu tenho um for que cria varias picturebox vamos supor para um color picker
Pic até Pic1000 ou seja pic1,pic2,pic3,pic4 assim até o 1000 cada uma contem uma cor diferencial
o problema é que não estou conseguindo criar o evento para todas e puxar os dado dela
tipo Nome | Cor | Tag
essas coisas tipo um if não to tendo muito resultado tentei varias formas tentando cria os evento
código:
PictureBox Pic = new PictureBox();
desculpa espero ter dado uma explicação melhor \:
-
Poderia nos mostrar o código neste for?
Att,
Igor F. Kunrath
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
-
claro
for (int i = 0; i < 1000; i++) { Random rnd = new Random(); Point size = new Point(10, 20); Size loc = new Size(i - 290, 0); Createpic(size, loc, "NewHexColor", rnd.Next(255), rnd.Next(255), rnd.Next(255)); if (i == 1000) { break; }; }
-
O Createpic() é um método que você mesmo definiu, correto? O que ele faz exatamente?
Att,
Igor F. Kunrath
Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita
MSDN Community Support
Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.
-
chamando função do Createpic(
ele cria varias picturebox
com o nome "NewHexColor1","NewHexColor2" até "NewHexColor1000" e para de criar elas
)
função dentro do Createpic(
definição do tamanho,
definição das posições,
definição do nome NewHexColor passando o i por final,
definição das cores(x,y,z)
)
to precisando colocar os eventos para elas são adicionadas assim
this.Controls.Add(picture);
picture é a estrutura que recebe
Createpic(size, loc, "NewHexColor"+i, rnd.Next(255), rnd.Next(255), rnd.Next(255));
os paramentos acho que o mais importante talvez seria o terceiro que seria o nome
para poder pegar as cores delas
Imagens
cada um é uma newhexcolor1,2,3,4 até 1000 agora preciso clica em uma e obter informações da que eu
cliquei tipo o nome ou a cor dela
Createpic(Tamanho, Localização, Nome, Corx, Cory, Corz);
edit: eu tava querendo criar um evento único mas para todas e poder obter informações
da que eu cliquei tipo a cor dela ou o nome dela
- Editado Z.s2 terça-feira, 29 de outubro de 2019 18:19
-
-
resolvido picture.Click += (s, e) => { MessageBox.Show(picture.Name.ToString()); };
- Marcado como Resposta IgorFKModerator quarta-feira, 30 de outubro de 2019 12:52