W miesięczniku Programista pojawiła się seria moich artykułów dotyczących projektowania kontrolek wizualnych.

  1. Część 1
    Przeważająca większość frameworków udostępnia pewien domyślny zestaw kontrolek wizualnych, przy pomocy których możemy zbudować interface naszej aplikacji. Wśród nich znajdziemy takie komponenty, jak przycisk, pole wyboru, pole opcji, lista itd. W przypadku przeciętnych aplikacji biznesowych, w których interakcja z użytkownikiem sprowadza się do wprowadzania lub edycji danych, jest to zestaw w zupełności wystarczający. Sytuacja komplikuje się jednak nieco, gdy nasza aplikacja potrzebuje edytora lub podglądu jakiegoś specyficznego rodzaju danych. Z pomocą przychodzą wtedy internetowe repozytoria, w których możemy odnaleźć brakującą kontrolkę. Istnieje również inna opcja – możemy spróbować napisać taką kontrolkę samodzielnie. W nadchodzącej serii artykułów postaram się przybliżyć czytelnikom ten temat.
    Więcej: Programista 6/2014
  2. Część 2
    Po solidnym wstępie możemy wreszcie zabrać się do roboty. Na pierwszy ogień weźmiemy napisanie dwóch komponentów: kompozytowego oraz prostego niestandardowego.
    Więcej: Programista 7/2014
  3. Część 3
    Często spotykaną funkcjonalnością niestandardowych komponentów jest możliwość podglądu fragmentu pewnego większego obszaru. Może nim być część mapy, obrazu albo wirtualnego obszaru roboczego. Wiele standardowych komponentów również funkcjonuje na podobnej zasadzie – choćby pole listy: wyobrażamy sobie, że elementów jest bardzo dużo, a użytkownik w danym momencie może obejrzeć tylko kilka z nich. Poznamy dziś rozwiązania, które pomogą zaimplementować taki właśnie mechanizm.
    Więcej: Programista 8/2014
  4. Część 4
    Po funkcjonalności przewijania – którą oprogramowywaliśmy poprzednim razem – drugim najczęściej spotykanym przekształceniem obszaru roboczego jest jego skalowanie (zoom), natomiast na trzecim miejscu znajdziemy rzadsze, ale również przydatne przekształcenie obrotu. Translacja, skala i obrót są przykładami przekształceń afinicznych, dla których Windows Forms – co miłe – posiada wbudowane wsparcie. Przygotujcie się na sporą dawkę matematyki…
    Więcej: Programista 9/2014
  5. Część 5
    Stosunkowo częstym scenariuszem jest konieczność obsługi przez kontrolkę bardzo dużych ilości danych. Ponieważ w takiej sytuacji rozwiązanie bezpośrednie rzadko kiedy się sprawdza, trzeba niestety ruszyć głową i opracować mechanizmy, które pomogą oszukać użytkownika, że widzi więcej niż w rzeczywistości wyświetlamy…
    Więcej: Programista 10/2014
  6. Część 6
    Za sobą mamy już pomysł, architekturę i kilka detali implementacyjnych. Nadszedł wreszcie czas, abyśmy pomyśleli o tym, w jaki sposób narysować naszą kontrolkę na ekranie. Dziś dowiemy się, jakimi narzędziami dysponujemy podczas renderowania kontrolki oraz poznamy kilka sztuczek przydatnych podczas implementowania tego procesu.
    Więcej: Programista 11/2014