rozmiar Tab Control

Sprawy związane z interfejsem użytkownika - kontrolki, wskaźniki, wyświetlacze, wykresy oraz inne zagadnienia tego typu...
Prorok
Posty: 51
Rejestracja: 08 mar 2011 15:33
Wersja środowiska: LabVIEW 8.6

rozmiar Tab Control

Post autor: Prorok »

Witam,

czy strony w Tab Control mogą być róznych rozmiarów ? Jeżeli tak, to jak to zrobić ?

pozdro
Awatar użytkownika
Pitol
Moderator
Posty: 983
Rejestracja: 19 lip 2007 00:00
Wersja środowiska: LabVIEW 2019
Lokalizacja: Kraków

rozmiar Tab Control

Post autor: Pitol »

Tak bezpośrednio się nie da, ale... nie pisałbym gdyby się nie dało.

To, że możnaby obsłużyć programowo rozmiary, rozmieszczenie i milion innych parametrów podczas przełączania zakładek pominę (taki mój głupi pomysł :) )

Rozwiązaniem jest użycie Tab Control z palety Classic a następnie zrobienie jej przeźroczystej.
Teraz możesz za pomocą różnych innych środków (kontrolki, dekoracje, itp) tak zmanipulować użytkownika, że będzie mu się wydawało, że zakładki są różnych rozmiarów.
Faktyczny rozmiar zakładek będzie wciąż taki sam, ale dzięki paru sztuczkom możesz to ukryć.
ObrazekObrazekObrazek
Chcesz taki podpis? Zajrzyj tutaj
Awatar użytkownika
bezimienny
Posty: 10
Rejestracja: 10 wrz 2013 21:31
Wersja środowiska: LabVIEW 2012

Re: rozmiar Tab Control

Post autor: bezimienny »

To, że możnaby obsłużyć programowo rozmiary, rozmieszczenie i milion innych parametrów
Nie jest to głupi pomysł niestety rozmiar Taba w Property node jest tylko do odczytu (pozostaje scripting?)
Pomysł z elementami dekoracyjnymi wydaje mi się pracochłonny.
Widziałem kilka lat temu aplikację firmowa NI zamiast Taba dziesiątki kontrolek jedna na drugiej z przełączanymi atrybutami "Visible"
Działało ładnie ale debugowanie i uruchamianie było praktycznie niemożliwe- po wystąpieniu błędu kilka kontrolek nałożonych na siebie z atrybutem Visible = "True".

Wiem, że to nie jest dokładnie rozwiązanie problemu ale może można zmieniać rozmiar okna(property "Front Panel Window:Window Bounds") albo użyć "Splitter bar"
Jakiś czas temu ja też chciałem aby [strony w Tab Control były rożnych rozmiarów ale po analizie za i przeciw przebudowałem kontrolki aby zapełnić wolne miejsca
Chętnie zapoznał bym się wynikami jeżeli komuś to się uda rozsądnie zrealizować
TMa
Posty: 203
Rejestracja: 07 sty 2010 12:56
Wersja środowiska: LabVIEW 2017

Re: rozmiar Tab Control

Post autor: TMa »

Taki koncept zaproponuje:

1. Wstaw tyle kontrolek Tab ile różnych rozmiarów potrzebujesz.
2. Każdy z nich ma tyle samo zakładek, tak samo nazwanych.
3. Przełączaj widzialność kontrolek tab na zdarzenie zmiany wartości.
4. Każda kontrolka ma wszystkie zakładki puste oprócz tej, którą obsługuje.

prosty przykład w załączniku.
Załączniki
Tab.vi
(12.17 KiB) Pobrany 425 razy
Awatar użytkownika
Pitol
Moderator
Posty: 983
Rejestracja: 19 lip 2007 00:00
Wersja środowiska: LabVIEW 2019
Lokalizacja: Kraków

Re: rozmiar Tab Control

Post autor: Pitol »

Rozwiązanie TMa też jest ciekawe.
bezimienny pisze:Pomysł z elementami dekoracyjnymi wydaje mi się pracochłonny.
Nie bardziej pracochłonny niż pomysł TMa. Wystarczy wstawić jeden obiekt do każdej zakładki i masz różne rozmiary.
W przypadku pomysłu TMa musisz oprogramować włączanie/wyłączanie kolejnych kontrolek TAB.
W moim przypadku wystarczy jedna kontrolka TAB, ale z dodatkową dekoracją.

Wszystko zależy od tego, co się chce osiągnąć.

EDIT:
bezimienny pisze:Nie jest to głupi pomysł niestety rozmiar Taba w Property node jest tylko do odczytu (pozostaje scripting?)
Kolega się nie przyłożył. Rozmiar kontrolowany jest przez własność Tab Control Pane Dimension, która jest R/W...
ObrazekObrazekObrazek
Chcesz taki podpis? Zajrzyj tutaj
Awatar użytkownika
bezimienny
Posty: 10
Rejestracja: 10 wrz 2013 21:31
Wersja środowiska: LabVIEW 2012

rozmiar Tab Control

Post autor: bezimienny »

Ok sprawdziłem
Tab Control Pane Dimension jest R/W i jest mniejszy od Windows Bounds o rozmiar "Tabs"
Całe życie się uczymy i jak bym wszystko wiedział to bym pewnie tu "Forum" nie zaglądał.
Jak bedę miał 3-cyfrową liczbę postów to przyłożenie będzie większe. Na razie raczkuje pomiędzy chartami CLD i CLA

Co do property node i invoke to w tym przypadku jest jednoznaczne i wymaga dokładnego czytania ale przykładowo:
Property node do array
Number of Columns skrót NumCols oznacza Number of Visible Colums
To damo dotyczy Rows
Niby drobiazg ale dodanie litery "V" Visible dodane do nazwy uczyniło by Property czytelniejsze NumVCols
Ale i tak Property w LV jest oto dużo prostsze niż w Visual Basic

Dziękuje za informacje
ODPOWIEDZ