Strona: [  << <   1   > >>  ]  z  1     
Autor Temat: automatycznie dodawane kontrolki (txt boxy)
leadass




Typ: neutral
Postów: 13
Zarejestrowany: Apr 2004
automatycznie dodawane kontrolki (txt boxy)

Szukam i szukam w forum i znaleźć nie mogę a czas mnie goni...

Jak dodawać automatycznie text boxy w czasie działania programu, np. by utworzyć tyle ile jest pozycji w list boxie?

Moża ktoś podsunie jakiś przykład lub podpowiedź?

Pozdrawiam Forumowiczów
Bartek

10-01-2005 20:31
Pokaż profil leadass  Wyślij email do leadass   
mikmas
From Łódź Stadt




Typ: neutral
Postów: 772
Zarejestrowany: Apr 2003

Wystarczy, że stworzysz kontrolkę textbox i we właściwości "index" wpiszesz "0". No i tam gdzie se to chcesz to wpisz:

dim I as integer
for i=0 to 100
load text1(text1.count)
text1(text1.count).left=0
text1(text1.count).top=i*text1(text1.count).height
text1(text1.count).visible=true
next


[Post edytowany dnia 10-01-2005 22:13 przez mikmas]


_____________________________________________
4C;65;70;69;65;6A;20;62;79;9C;20;73;69;EA;20;
62;61;72;64;7A;69;65;6A;20;73;6B;6F;6E;63;65;
6E;74;72;6F;77;61;B3;20;6E;61;20;6F;64;70;6F;
77;69;65;64;7A;69;2C;20;61;20;6E;69;65;20;6E;
61;20;72;6F;7A;73;7A;79;66;72;6F;77;79;77;61;
6E;69;75;20;3A;50

10-01-2005 22:12
Pokaż profil mikmas  Wyślij email do mikmas   Odwiedź stronę mikmas       3632553
karolinavb




Typ: neutral
Postów: 468
Zarejestrowany: Jan 2003

I jeszcze metoda jak na stronie:

http://members.lycos.co.uk/bisiekmob/texty/kontrolki.htm


_____________________________________________
Karolina

11-01-2005 01:24
Pokaż profil karolinavb  Wyślij email do karolinavb   
leadass




Typ: neutral
Postów: 13
Zarejestrowany: Apr 2004
Świetny kod, tylko teraz ...

Skorzystałem z metody podanej przez Karolinę, bo wcześniejsza podpowiedź nie działała u mnie, a potrzebne było coś co chodziło.
Tylko teraz, gdy program dodaje mi wymaganą liczbę textboxów, które pobierają sobie dane z listy, jak się odwołać do pojedynczej kontrolki, znaczy "po czym" Jak to uzyskać ?!!?

Jako że jest ich całkiem dużo, muszę użytkownikowi dodać pasek przewijania. Potencjalnie to nie problem, najchętniej to napisałbym kodzik, który przesuwa wraz z ruchem scrolla wszystkie kontrolki.
Tylko po czym się odwołać do danej kontrolki?

Bez odwołania zmieniam położenie tylko ostatniej kontrolki.

11-01-2005 14:32
Pokaż profil leadass  Wyślij email do leadass   
karolinavb




Typ: neutral
Postów: 468
Zarejestrowany: Jan 2003

Rozumiem, że wywołałeś mnie "do odpowiedzi"

1. Przykład przewijania formy możesz wziąć ze strony

http://www.thescarms.com/vbasic/ScrollForm.asp - Create a Scrollable Form

2. A tu "wash and go" http://www.thescarms.com/vbasic/DynamCtls.asp - Dynamically Add Controls and Create a Scrollable Form


nie zaglądałam mam tylko w zbiorach  na dysku jakbyś nie mógł sciągnać daj znać..

3. Odwołanie do kontrolki dodanej dynamicznie według metody Biśka to jest np
jeśli np. pwołałes kontrolkę

....  Controls.Add("VB.TextBox", "Txt1" )
to odwołanie może być

Controls("Txt1" ).Left = 800
Controls("Txt1" ).Text = "dzień dobry"
MsgBox Controls("Txt1" ).Text

Sorry za skrótową odpwiedź ale mam termninową pracę na wczoraj...


_____________________________________________
Karolina

11-01-2005 18:28
Pokaż profil karolinavb  Wyślij email do karolinavb   
leadass




Typ: neutral
Postów: 13
Zarejestrowany: Apr 2004
:)

Dziękuje "... za skrótową odpowiedź ..." 

11-01-2005 20:00
Pokaż profil leadass  Wyślij email do leadass   
mikmas
From Łódź Stadt




Typ: neutral
Postów: 772
Zarejestrowany: Apr 2003

Mógłbyś podać błąd, jaki wyskakuje jak używasz tej mojej funkcji? Jestem poprostu ciekaw - zawsze używałem tej metody


_____________________________________________
4C;65;70;69;65;6A;20;62;79;9C;20;73;69;EA;20;
62;61;72;64;7A;69;65;6A;20;73;6B;6F;6E;63;65;
6E;74;72;6F;77;61;B3;20;6E;61;20;6F;64;70;6F;
77;69;65;64;7A;69;2C;20;61;20;6E;69;65;20;6E;
61;20;72;6F;7A;73;7A;79;66;72;6F;77;79;77;61;
6E;69;75;20;3A;50

11-01-2005 20:15
Pokaż profil mikmas  Wyślij email do mikmas   Odwiedź stronę mikmas       3632553
leadass




Typ: neutral
Postów: 13
Zarejestrowany: Apr 2004

Run time error '340';
Control array element '2' doesn't exist

dla linii Text1(Text1.Count).Left = 0

11-01-2005 21:48
Pokaż profil leadass  Wyślij email do leadass   
karolinavb




Typ: neutral
Postów: 468
Zarejestrowany: Jan 2003

Aby w ten sposób dodawać kontrolki jak podał Michał należy uczynić najpierw tak jak powiedział: ... we właściwości "index" wpiszesz "0", a błąd sugeruje, że tego nie zrobiłeś, nie ma więc tablicy kontrolek.

Po 2-gie po wykonaniu operacji

load text1(text1.count)

mamy text1.count kontrolek, ale indeksy kontrolek w tablicy rozpoczynają się od 0 (ostatnia zatem ostatnia ta dodana kontrolka w tablicy kontrolek ma indeks count-1) , więc i tak w linii

text1(text1.count).left=0

pojawi się błąd ponieważ kontrolki text1(text1.count) nie ma , ta ostatnia dodana ma indeks text1(text1.count-1), chociaż jest ich text1.Count....

ale przy poprawnym napisaniu kodu i wykonaniu zgodnie z zaleceniem Michała (Index=0), jego metoda wydaje mi się praktyczniejsza, przytoczyłam tę drugą własciwie tylko można powiedzieć szkoleniowo, należy wydaje mi się ją stosować zazwyczaj gdy chcemy kontrolkom przyporządkować konkretne nazwy często związane z funkcjami na formie i warto ją też znać, wówczas gdy chcemy dodawać i również usuwać kontrolki podczas wykonania jakiegoś procesu.


_____________________________________________
Karolina

11-01-2005 22:32
Pokaż profil karolinavb  Wyślij email do karolinavb   
mikmas
From Łódź Stadt




Typ: neutral
Postów: 772
Zarejestrowany: Apr 2003

Wielkie sorry! Tak to jest jak się używa Kopiuj, Wklej , zapomniałem napisać text.count-1


_____________________________________________
4C;65;70;69;65;6A;20;62;79;9C;20;73;69;EA;20;
62;61;72;64;7A;69;65;6A;20;73;6B;6F;6E;63;65;
6E;74;72;6F;77;61;B3;20;6E;61;20;6F;64;70;6F;
77;69;65;64;7A;69;2C;20;61;20;6E;69;65;20;6E;
61;20;72;6F;7A;73;7A;79;66;72;6F;77;79;77;61;
6E;69;75;20;3A;50

12-01-2005 15:05
Pokaż profil mikmas  Wyślij email do mikmas   Odwiedź stronę mikmas       3632553
leadass




Typ: neutral
Postów: 13
Zarejestrowany: Apr 2004

Uffffffffff, no bo już myślałem że coś robię wbrew przyrodzie


Serdecznie pozdrawiam
Bartek

13-01-2005 22:35
Pokaż profil leadass  Wyślij email do leadass   
Wszystkich odpowiedzi: 10 :: Maxymalnie na stronę: 20
Strona: [  << <   1   > >>  ]  z  1