Strona 1 z 1
InputBox jako Combi?
: wt cze 17, 2014 11:23 am
autor: krzys59
Witam
Czy da się zrobić z InputBoxa (w makrach) coś w stylu pola Combi?
Dokładniej chciałbym otwierać input i mieć możliwość wpisania danych ale równocześnie żeby mi wyświetlał listę do wyboru. Czyli coś jak pole Combi.
Mogę to zrobić przez dodatkowy Dialog z jednym polem Combi w którym będzie odniesienie do danych z formularza, to potrafię, ale może da się obejść Dialog i zrobić to za pomocą jakiegoś innego rozwiązania?
Krzysiek
Re: InputBox jako Combi?
: wt cze 17, 2014 11:59 pm
autor: Jan_J
InputBox jest funkcją o ugruntowanej w tradycji nazwie, generującą skrajnie uproszczony dialog z jednym polem typu Text Entry. Combo Box jest innego typu kontrolką. Najprościej jest zdefiniować sobie bibliotekę, w której takie dialogi byłyby zadeklarowane pod łatwymi do zapamiętania nazwami.
Patrz trochę: moduł easygui napisany w Pythonie przez Stephena Ferga, by odciążyć użytkownika od konieczności pisania dialogów w Tk (albo innym środowisku okienkowym).
Re: InputBox jako Combi?
: śr cze 18, 2014 8:04 pm
autor: krzys59
Jan_J pisze:...... Najprościej jest zdefiniować sobie bibliotekę........
Dzięki za pomysł, poszukam, ale z tą biblioteką to przesadziłeś

aż taki mądry to ja nie jestem

Re: InputBox jako Combi?
: śr cze 18, 2014 11:42 pm
autor: Jan_J
Dlaczego przesadziłeś?
Zamiast projektować dialog na potrzeby jednego dokumentu, projektujesz go raz, piszesz funkcję postaci np. function ComboInputBox(message, items) as string, umieszczasz to wszystko w konfiguracji OpenOffice'a (czyli w bibliotece właśnie) i zapominasz, jak ten dialog został zbudowany.
Re: InputBox jako Combi?
: czw cze 19, 2014 2:21 pm
autor: krzys59
Nie wygląda to zbytnio skomplikowane. muszę pokombinować z tym.
Ale skoro tak, to rodzi mi się pytanie, czy tak przygotowany dialog i funkcje go wywołujące będą przenośne? Z komputera na komputer, w innych systemach, skoro umieszczam to w bibliotekach własnych?
Pomysł z easygui jest ciekawy, pakiet ma spore możliwości, z tym, że nie za bardzo potrafię do użyć w LO, a poza tym, czy dobrze rozumiem, że chcą go używać na innym komputerze też muszę mieć zainstalowanego pythona i ten pakiet? Jeśli tak, to takie rozwiązanie nie ułatwiłoby mi życia, wręcz odwrotnie. Napisanie dokumentu dla kogoś, ale z koniecznością instalowania dodatkowych pakietów raczej nie jest dobrym pomysłem. Wolę oprzeć się na czystym LO bez dodatkowych pakietów.
Re: InputBox jako Combi?
: pt cze 20, 2014 10:37 pm
autor: Jan_J
Easygui podałem jako przykład dobrze zaprojektowanej biblioteki tego typu. Nie zalecałbym używać go w OpenOffice. Python jest, ale nie zawsze jest TkInter.
Przenośność kodu interpretowanego zawsze stwarza pewien problem. Albo mamy podczs interpretacji biblioteki, do których się odwołujemy (co wymaga wstępnych zabiegów), albo mnożymy kopie kodu ponad miarę przyzwoitości (tzw. makra w dokumentach).
Jeżeli dokumenty mają ograniczony zasięg (powiedzmy wewnętrzne dokumenty w firmie), to ja optuję za ustaleniem wzorcowej konfiguracji systemu, na którym mają pracować. Ale wiem, że istnieją inne opinie.
Re: InputBox jako Combi?
: pt cze 20, 2014 11:06 pm
autor: krzys59
Jan_J pisze:Jeżeli dokumenty mają ograniczony zasięg (powiedzmy wewnętrzne dokumenty w firmie), to ja optuję za ustaleniem wzorcowej konfiguracji systemu, na którym mają pracować.
Problem u mnie jest taki, że są i Maci i PC z Windows od XP po 8, a w domu jak coś dłubię to robię to na linuxie, do tego dokumenty trafiają do ludzi z firmy i każdy ma coś innego u siebie, więc siłą rzeczy musi to być przenośne. To tak na marginesie
