ďťż

Ładny brzuch

Witam
Tworze kilka kształtów o pewnym charakterze, chce aby bo kliknięciu myszką na dany kształt wyświetlił zaszło pewne zdarzenie dla przykładu niech będzie napis.

void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button,
      TShiftState Shift, int X, int Y)
{
    if (Button==mbRight)
        {
            for (std::map<TShape*,TLabel*>::iterator I1=MapOfShapes.begin();I1!=MapOfShapes.end();I1++)
                if (I1->first == dynamic_cast<TShape*>(Sender))
                Label1->Caption="OK";

        }
}

Jednak nic nie zachodzi, może wie ktoś jak do tego podejść lub co omijam.

Dzięki za odpowiedz.



ale kaszana.
Nie możesz po prostu sprawdzić współrzędnych myszki i porównać ze współrzędnymi kształtu. Coś jak wykrywanie kolizji.

moze oprogramuj zdarzenia tych kształtów

Problem dokładnie polega na tym że stawiam wierzchołki na pewnym obszarze, i miedzy tymi wierzchołkami chce narysować linie, najpierw zaznaczam jeden wierzcholek, pozniej drugi i rysuje mi sie linia.
1. Wierzcholki tworze sobie dynamicznie, podczas dzialanie programu
2. Mysle nad rozwiazaniem by dla kazdego stworzonego wierzcholka przypisywac metoda zwracajaca jego polozenie.

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •