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



Teraz jest 27 gru 2024, o 11:03


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 6 ] 
Autor Wiadomość
PostNapisane: 28 wrz 2017, o 13:10 
Offline
Użytkownik

Dołączył(a): 20 lut 2013
Posty: 166
Pomógł: 0

Witam Wszystkich ;) Mam taki problem: chciałbym uzyskać w Delphi taki efekt, żeby po kliknięciu przycisku cały Groupbox przestał być aktywny i on oraz cała jego zawartość (TPanel, TLabel i TGauge) została wyszarzona.

Myślałem że da się to uzyskać za pomocą przez "Properties" -> "Enabled" -> "False", ale efekt jest taki:

- Groupbox - brak efektu, tzn nazwa zostaje dalej w kolor jak w "Properties" ->"Color"
- TPanel - brak efektu, tzn. brak wyszarzenia i liczba którą jest napełniany nadal się zmienia;
- TLabel - tutaj jest ok, wyszarzone tak jak właśnie trzeba :)
- TGauge - tak samo jak w TPanel

Czy jest możliwość w jakiś prosty sposób takie efekt wyłączenia/wyszarzenia całej zawartości tego Groupbox uzyskać ?

Czy trzeba się bawić, że np. jak kliknięto ten przycisk to nie wysyłaj danych do TPanel i TGauge plus jakaś przeźroczystość na całego tego Groupboxa (chociaż jeszcze nie doszukałem się jak taki efekt uzyskać) ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 wrz 2017, o 13:32 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27319
Lokalizacja: Szczecin
Pomógł: 1041

Włączenie właściwości ENABLED GroupBoxa oczywiście wyłączy wszystkie jego dzieci - dostaną również ENABLED = False

ale żeby uzyskać efekt jakby wyszarzenia - to trzeba się zastanowić najpierw co chcesz uzyskać. Ty byś chciał uzyskać pewnie coś co jest niemożliwe dla wszystkich aktualnie użytego "Windows Theme" .... różnie może być na różnych windowsach itp ....

jeśli chodzi o same labelki jak na obrazku niżej

Obrazek

to możesz zrobić coś takiego jak napisałem w obsłudze klawisza - może to ci coś powie i zobaczysz jak można wykorzystać często nieznane i mało używane właściwości komponentów ;)

Składnia: [ Pobierz ] [ Ukryj ]
język delphi
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


-- 2 minutach --

Możesz to poszerzyć jeszcze o TEDIT ;)

Obrazek

Składnia: [ Pobierz ] [ Ukryj ]
język delphi
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


ale już np z progressbarem na Win10 nie wyjdzie jak domyślnie

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 wrz 2017, o 13:43 
Offline
Użytkownik

Dołączył(a): 20 lut 2013
Posty: 166
Pomógł: 0

Dziękuje za odpowiedź Panie Mirku ;) Dokładnie coś takiego znalazłem w "internetach", żeby wszystkie dzieci w Groupboxie wyłączyć. Tylko że samo wyłączenie Label i Edit mnie nie ratuje, chyba pozostaje mi ręcznie blokować "wysyłanie" zmiennych do TPanel i TGauge i zmiana kolorów. Jakieś wyjście to jest

PS. Po porostu chcę żeby użytkownika nie świerzbiło patrzyć na coś coś jest nie aktywne w danym momencie:D hehe



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 wrz 2017, o 14:58 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27319
Lokalizacja: Szczecin
Pomógł: 1041

nie rozumiem do końca twojego podejścia - no ale jeśli user ma nie patrzeć to się chowa formatkę albo nawet groupboxa można ustawić na visible = false chociaż to najbrzydsze rozwiązanie

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 wrz 2017, o 13:48 
Offline
Użytkownik

Dołączył(a): 20 lut 2013
Posty: 166
Pomógł: 0

też myślałem właśnie nad visible ale jednak robię "ręcznie" efekt wyszarzenia ;)

PS. Mam pytanie jeszcze co do ComboBox'a bo chciałbym żeby był ustawiony w "Style" na "csDropDownList" ale wtedy przestaje działać Autostart. Combobox jest niby napełniony, ale zawsze po włączeniu aplikacji żaden port nie jest w nim wybrany :/

Gdy "Style" -> "csDropDown" wszystko działa jak trzeba



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 wrz 2017, o 15:11 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27319
Lokalizacja: Szczecin
Pomógł: 1041

no bo trzeba sobie ręcznie indeks ustawić

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



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: 6 ] 

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