1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.
  2. Informação: Pela 0:30 desta Sexta-feira (9 de Dezembro, 23:30 de Quinta-feira nos Açores) o Fórum e restantes sites da ZWAME vão estar offline para manutenção durante cerca de 1h30.
    Se necessário faremos actualizações via Twitter e Facebook.
    Remover anúncio

.NET Evento Click

Discussão em 'Programação' iniciada por skekas, 25 de Outubro de 2007. (Respostas: 3; Visualizações: 602)

  1. Boas.
    Sou principiante em .NET, queria fazer algo simples, penso eu, do estilo criar uma classe desenhar um rectangulo
    e definir um evento click dessa classe rectangulo.

    Até onde eu cheguei(bem ou mal) c++/CLI:

    ref class Caixa: public System::Windows::Forms::UserControl
    {
    float x,y,w,h;//coordenadas do meu rectangulo
    public:
    Caixa(){
    this->Click +=gcnew System::EventHandler(this, &Caixa::Caixa_Click);
    }
    void desenhar(Graphics^ g,float x1,float y1,float w1,float h1){//metodo de desenho do rectangulo invocado no paint do form
    x=x1;
    y=y1;
    w=w1;
    h=h1;
    Pen ^pe=gcnew Pen(Color::Black, 1);
    Brush ^brush=Brushes::White;
    g->FillRectangle (brush,x,y,w,h);
    g->DrawRectangle (pe,x,y,w,h);

    private: System::Void Caixa_Click(System::Object^ sender, System::EventArgs^ e){
    MessageBox::Show("Caixa");
    }
    };

    O problema é q quando clico no rectangulo apenas me da o evento click do form, ou seja do q se encontra por detrás
    do rectangulo.

    Alguém me pode ajudar?

    Desde ja o meu obrigado.
     
  2. xinituh

    xinituh Power Member

    Será que não consegues gerar um evento no form principal de forma que esse evento chame o do click do rectangulo ?
     
  3. Os eventos não podem ser chamados, não estou a ver como vou chegar com um evento no form ao evento da caixa ou rectângulo. :(
     
  4. Eu acho que o problema está ou nalgum método que falta ser chamado, ou então associar mesmo aquele pedaço de rectângulo ao nosso UserControl. Mas não tá fácil!!
     

Partilhar esta Página