2012-05-30 10 views
6

To pytanie jest bardzo otwarte i prawdopodobnie odpowiedź na to pytanie będzie zależała od systemu, ale powiedzmy średnio, który jest najlepszym sposobem pokazania dużej matrycy (na przykład 128 elementów). różne stany?Wiele kontrolek GUI wskazujących różne stany

  • Utwórz jedną kontrolę dla każdej komórki i niech ofertę GUI biblioteki z wszystkich zdarzeń i rzeczy (w systemie Windows 128 HWND: s)
  • narysować całą matrycę za pomocą prymitywów grafika niższego szczebla

Czy jest różnica w wydajności pamięci/procesora w zależności od wyboru? Liczba stanów w mojej aplikacji wynosi 4 dla każdej komórki, więc potrzebują 2 bitów do reprezentowania ich stanu. Każda komórka będzie reprezentowana przez obraz związany ze stanem.

+0

To nie jest pytanie programistyczne, jest to pytanie o wygodę użytkownika. Możesz zapytać o to na stronie ux.stackexchange.com. –

+1

Czy uważasz, że użytkownik dba o to, w jaki sposób zaimplementowałem tę samą funkcjonalność? – user877329

+0

Najwyraźniej źle zrozumiałem to pytanie. Przepraszam. –

Odpowiedz

3

Na pewno jest różnica. Spróbuję to zilustrować, a także założeń, na których się opiera.

  1. koszt sterowania = pamięć kontrolnych + zdarzeń koparki do sterowania + odniesienia do kontrolnych + jedną dodatkową kontrolę rurociągu zdarzeń

  2. korzyść z „napięty” kontrola za mapowanie komórek. Koncepcyjnie czysty, prosty kod, najłatwiej się nad tym zastanowić.

  3. Koszt ścisłego mapowania: pomnóż koszt jednej kontroli przez liczbę komórek.

Alternatywa, którą zamierzam zasugerować, zakłada, że ​​różnica kosztów między ciasnym odwzorowaniem a luźnym odwzorowaniem "jednego pierścienia" jest ważna.

alternatywa: wystarczy dodać jedną kontrolę, która jest zarejestrowana na imprezy tylko w granicach całego widzenia matrycy zaprezentować, ma kawałek kodu w celu określenia położenia kursora, a co komórka, która odpowiada, a następnie aktualizuje tylko tę komórkę w zależności od interakcji użytkownika.

Zaletą tego jest uzyskanie kosztu krańcowego tylko jednej dodatkowej kontroli, ale korzyści z interakcji obsługi dla całej macierzy. Korzyść marginalna lub ta kontrola jest znacznie wyższa niż w przypadku pojedynczej ścisłej kontroli. Aldo, koszt wdrożenia jest niewielki, ponieważ jest to wspólny model i nie jest zbyt trudny.

Powodzenia!

Powiązane problemy