Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 16 wrz 2024, o 20:44


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 1 ] 
Autor Wiadomość
PostNapisane: 27 wrz 2013, o 23:02 
Offline
Użytkownik

Dołączył(a): 27 wrz 2013
Posty: 30
Pomógł: 1

Postanowiłem zrobić małą konkurencję dla SunRiver'a, ale nie będę mu wchodził w kompetencje i pokaże Wam możliwości WPF.

Na początek podzielę się źródłami moich eksperymentów nad kontrolką WPF - wskaźnik analogowy (wskazówkowy), można tego użyć na różne sposoby (woltomierz, termometr czy inne wynalazki z ADC).

Obrazek

Poza tym co widać na obrazku mój wskaźnik ma wbudowany dość ciekawie wyglądający efekt przyspieszenia (i opóźnienia) wskazówki. Przyspieszenie/opóźnienie jest regulowane.

W projekcie jest dużo uproszczeń, niektóre rzeczy pewnie zrobiłem niefachowo bo to jest pierwsza rzecz jaką robiłem w WPF, ale dzięki temu może łatwiej będzie ogarnąć taki kod komuś kto nie ma za dużo styczności z programowaniem w C#.

Nie będę się rozpisywał nad kodem, bo nie wiem czy jest sens i czy w ogóle znajdzie się ktoś zainteresowany taką kontrolką czy ogólnie WPF-em.

Zalety:
- prostota (kontrolka jest w 2 plikach: .cs i jeden .xaml)
- działa stabilnie i wydajnie

Do zrobienia / wady:
- nie ma cyferek na tarczy
- są tylko 2 właściwości - wartość i inercja
- nie ma możliwości zmiany wymiarów (wskaźnik ma po prostu 200x200px)
- "prawdziwa" inercja (wskazówka nie wybiega poza wartość jak w prawdziwym woltomierzu, zastosowałem proste przyspieszenie i opóźnienie wskazówki)

Używam tego "mini projektu" jako bazy do różnych programów pisanych na zamówienie. Kiedyś miała z tego powstać super-uniwersalna kontrolka w której wszystko można poustawiać za pomocą własciwości, ale doszedłem do wniosku że z pisaniem takiej super-uniwersalnej kontrolki będzie 10 razy więcej pracy, niż z ręcznym dostosowywaniem jej za każdym razem do każdego projektu.

Może komuś sie będzie chciało to rozwinąć, może zrobimy z tego jakiś projekt typu "wewnętrzne forumowe open-source". Ja niestety mam za dużo projektów na głowie żeby się tym na poważnie zająć.

W załączniku z długą nazwą jest kompletna solucja pochodząca z Visual Studio 2008 i plik demo. W nowszych wersjach Visual Studio solucja powinna się zaimportować bez problemu. Solucja zawiera 2 projekty - jeden z kontrolką (kompiluje się do pliku DLL), drugi z programem w którym użyta jest kontrolka.

Drugi załącznik to spakowany wynikowy plik exe.


Załączniki:

Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 1 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO