symulator bramek logicznych

0

Hej! Na wstępie zaznacze, ze jestem początkująca w Delphi. Problem może wyda wam się banalny, ale ja po prostu nie wiem jak się do tego zabrac. Mam do zrobienia program jak w tytule. Chce aby byla w nim możliwosc przeciągania dowolnej bramki z "palety wyboru" i dołączania jej do budowanego układu. Może ktos wie jak zrobic/narysowac/stworzyć dowolną bramke, no i jak je łaczyć ze sobą (na zasadzie przeciągnij i dołącz). Błabym wdzięczna za pomoc/pomył :)

0

Hehe, ja bym go banalnym nie nazwał ;)

Jedno pytanie: Umiesz w miarę dobrze programować w czymś innym?

odp: Nie - poszukaj gotowca, mniej stresu Cię czeka :) Jak na początek to trochę hardkorowe zadanie.

odp: Tak -

Przeciąganie elementów było wielokrotnie, ale najprostsza metoda wcale nie wymaga obsługi Drag&Drop. Klikając na element palety zaznaczasz go jakoś, może być zmiana glifu ew dodanie obwódki czy cokolwiek innego. Jednocześnie gdzieś sobie zapamiętujesz co jest aktualnie wybrane. Po kliknięciu w obszar rysowania dodajesz to co masz zaznaczone i wsio.
Jeśli jednak chcesz żeby było widać co ma być dodane możesz zrobić sobie zestaw kursorów ;) IMO najprostsze podejście.

Rysowanie bramek.
1 - odczytywane z plików i rysowane na canvas (wada - ciężko zmienić rozmiar tak żeby to ładnie wyglądało)
2 - rysowanie ręczne, w canvas jest pokaźny zbiór funkcji rysujących (wada - trochę trzeba się naklepać)

Żeby łączyć na zasadzie przeciągnij i połącz musisz mieć w każdym rysunku bramki zdefiniowane punkty połączeń, dodatkowo w tle trzeba mieć zapamiętaną listę wszystkich elementów w układzie wraz z ich położeniem w schemacie. Przy kliknięciu na schemat przeczesujesz listę elementów i sprawdzasz czy kliknięte miejsce to punkt połączenia, potem to samo robisz dla zamknięcia ścieżki z drugiej strony. Rysowanie tego tak, by ładnie się łamało i nie wchodziło na bramki to już inna sprawa.
Oczywiście w momencie połączenia/rozłączenia jakiejś ścieżki trzeba zmodyfikować graf połączeń pomiędzy układami.

Jeśli to Cię jeszcze nie odstraszyło to mogę skrobnąć co nieco na temat wyliczania stanu układu, a wież mi jest tu o czym się rozpisywać ;)

0

W Paint narysuj sobie symbole bramek.
Potem w kompilatorze zrób Drag and Drop dla komponentów Image, które posiadają wcześniej narysowane symbole w opcji Picture. :)

Resztę rozkminisz sam(a). :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1