Strona: [  << <   1   > >>  ]  z  1     
Autor Temat: Macierz z TextBoxów
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004
Macierz z TextBoxów

Witam wszystkich

Problem polega na tym, że chciałem zrobić macierz z możliwością modyfikacji zawartości komórek tej macierzy. Myślałem żeby zrobić ją z Text Boxów czyli np. Text1(0) do Text1(9) - jako pierwsza kolumna, Text2(0) do Text2(9) - jako druga kolumna itd.

Chodzi o to że macierz ta ma być generowana w trybie RUN-Time czyli podaję wymiar macierzy np. 10 X 10 i się robi

Jeżeli chodzi o wygenerowanie jednej kolumny to wiadomo że inkrementuję INDEX ale co zrobić żeby wygenerować np. 2 kolumny

Przypominam - wymiary są podawane już gdy odpalimy program.

Jeżeli zna ktoś jakiś inny sposób na stworzenie takiej macierzy to także czekam na propozycje

Mam nadzieję, że ktoś mi pomoże i z góry Wielkie Dzięki !!!

Pozdrawiam


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

26-04-2004 16:36
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
andrey
Łódź



Typ: neutral
Postów: 295
Zarejestrowany: Mar 2003

Njpierw slowo wstepu dla uzytkownikow forum ktorzy moga nie wiedziec co to jest macierz. "Macierz to prostokątna tablica wielkosci nalezacych do pewnego ciala K lub pierscienia" Macierz ma n -wierszy i m -kolumn pare liczb (n,m) nazywamy wymiarem macierzy. Prosta macierz moze wygladac tak:
      | 2 3 1 4 |
B = |-1 5 0 1 |
      | 2 2 9 1 |
Nie wiem czy formatowanie forum dalo to dobrze zapisac. Teraz moje pytanie chcesz wstawiac tekstbox(n) czy okreslona ich ilosc wlasnie 10X10 i w tych wymiarach generowac macierz?


_____________________________________________
http://www.carbondesign.pl/ - rowery poziome, trójkołówce, handbike-i, tuning, akcesoria

27-04-2004 12:13
Pokaż profil andrey  Wyślij email do andrey   Odwiedź stronę andrey       3078613
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004

Jeżeli chodzi o TextBox(n) to oczywiste jest, że w momencie odpalania programu oraz użyciu pętli np.

For wiersz = 1 To X
Load Text1(wiersz)
Text1(wiersz).Visible = True
Next wiersz

zostanie wczytanych 99 textBoxów + ten który musi już być na formie.

Wiadomo, że odpowiednie rozmieszczenie tych 100 TextBoxów to nie problem.

Wartość X można odczytać wcześniej w trybie RUNTIME
(tzn. wtedy gdy już program został odpalony)

A co jeżeli chcę stworzyć 10 kolumn, gdzie każda to inny TextBox czyli

kolumna 1 - TextBox1(0) do TextBox1(9)
kolumna 2-  TextBox2(0) do TextBox2(9) itd.

kolumna 1 wczyta się gdy już odpalimy program i podamy X=99

A co z nastęną kolumną ??

Dla tych co nie zrozumieli mojego problemu :

1. Powiedzmy uruchamiam program i wyskakuje okno gdzie podajemy wymiar macierzy.

2. Wpisane wartośći przypisuję jakimś zmiennym

I co dalej ??

Jak wygenerować te 10 kolumn

Przypominam, że może być inna wartość niż 10 - dopiero po odpaleniu programu podajemy odpowiednią wartość

Ehhh ale namieszałem Czekam na porady i Dziękuję

Pozdrawiam


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

27-04-2004 14:52
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
Sen




Typ: neutral
Postów: 20
Zarejestrowany: Jan 2004

Mozliwe że nie do końca zrozumiałem ale:

Jeżeli masz macierz 10x10 to tworzysz 99 textboxów + ten jeden i rozmieszczasz je po 10 w każdej kolumnie, więc po co robic kolumny z textboxów które dla każdej kolumny mają inna nazwę??

27-04-2004 17:36
Pokaż profil Sen  Wyślij email do Sen   
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004

Też tak myślałem tylko problem w tym, że stworzenie 99 TextBoxów z jednego utrudniłoby mi potem pracę nad algorytmem według którego ma działać program, dlatego też wydaje mi się że gdybym miał 10 textboxów, każdy inny w oddzielnej kolumnie, wtedy łatwiej mógłbym odwoływać się do każdej komórki w macierzy.

Tak w sumie sobie myślę, że pomysł z 99 textboxami + 1 pierwotny też nie jest takie złe

Spróbuję i dzięki za porady. Jeśli ktoś ma jeszcze jakieś pomysły to chętnie skorzystam

Wielkie Dzięki i Pozdrawiam


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

27-04-2004 17:55
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
karolinavb




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

Jestem blondynką, więc zapytam: dlaczego TextBox, a nie kontrolka typu "unbound grid" ?

[Post edytowany dnia 28-04-2004 13:59 przez karolinavb]


_____________________________________________
Karolina

28-04-2004 13:58
Pokaż profil karolinavb  Wyślij email do karolinavb   
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004

Tak się składa, ze nie korzystam z wszystkich kontrolek i być może nie wiem , że taka istnieje

Jeśli taka jest to w jakiej bibliotece ??

Czy w ogóle jest jakaś kontrolka przypominająca wyglądem tablicę "n" na "m" ??

Pozdrawiam Wszystkich


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

28-04-2004 14:51
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
karolinavb




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

Kontrolki typu grid (siatka n x m) dostępne w VB6 to:
1. Microsoft Data Bound Grid Control (DBGRID32.ocx) -  dla tej  kontrolki Microsoft przedstawia przykład wykorzystania właśnie z tablicą (n x m) na stronie http://support.microsoft.com/default.aspx?scid=kb;EN-US;140021 pt.: "DBGRIDUB.EXE Uses DBGRID in an Unbound Mode". Jest tam bardzo obszerne wytłumaczenie jak to działa. Jeśli nawet w tym przypadku nie wykorzystasz ostatecznie kontrolki tego typu to warto z kontrolkami typu GRID się zapoznać.
Pracuje ona z właściwością  DataMode ustawioną na 1 "unbound"
Kod przedstawiony na tej stronie wykorzystywałam i kod tego przykładu Microsoft mam w jakimś przykładowym projekcie wpisany dokładnie tak jak jest na stronie. Jeśli Cię to interesuje mogę przesłać ten kod. Macierz to przecież nic innego jak tylko forma wirtualnej tabeli (albo odwrotnie, jak kto woli) .

Pozostałe kontrolki to:
2. Microsoft DataDrid Control (MSDATGRD.ocx)
3. Microsoft  FlexGrid Control 6.0 (MSFLXGRD.ocx)
4. Microsoft Hierarchical FlexGrid Control (MSHFLXGD.ocx)

Takie też nalezy wstawić w opcji Project/Compoments obiekty.

Nawet jeśli dana kontrolka GDRID nie może pracować w trybie "unbound" , to przecież macierz można bez problemu wpisać do obiektu ADOBD. Recordset jako wirtualną tabelę (n x m), bo w końcu ADOBD. Recordset wcale nie musi pracować z rzeczywistą tabelą w bazie danych, czy zbiorem rekrdów uzyskanych w wyniku zapytania, ale właśnie również ze zbiorem stworzonym z tablicowego zbioru danych za pomocą kodu. Pola dostępne są przecież przez indeks również , niekoniecznie przez nazwę. Tak też kiedyś robiłam.
Proszę wybacz zbyt długie przemówienie, ale wydaje mi się, że tak dużo kontrolek TextBox, to nie jest najlepiej i chciałam Cię przekonać to przedstawionego rozwiąznia.

[Post edytowany dnia 28-04-2004 16:26 przez karolinavb]


_____________________________________________
Karolina

28-04-2004 16:24
Pokaż profil karolinavb  Wyślij email do karolinavb   
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004

Witam

Zaznajomiłem się z tą kontrolką (dzięki karolinavb ) i na pierwszy rzut oka wydaje się być dobrym rozwiązaniem.

Tylko mam jedno pytanie: Jak w trybie RUN-TIME mogę wprowadzać do poszczególnych komórek jakiś tekst ??

Z Góry dzięki za INFO i pozdrawiam


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

29-04-2004 16:24
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
karolinavb




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

Wybacz,że tak długo nie odpowiadałam, jeśli pytanie nadal aktualne wysyłam Ci przykład, mam nadzieję, że nie ma tam zbyt duzo błędów

Pozdrawiam Karolina


_____________________________________________
Karolina

16-05-2004 06:43
Pokaż profil karolinavb  Wyślij email do karolinavb   
DJK



Typ: neutral
Postów: 871
Zarejestrowany: Feb 2004

Dzięki Karolina - temat jest nadal aktualny i na pewno skorzystam z materiałów, które mi podesłałaś

Wielkie Dzięki i Pozdrawiam


_____________________________________________
Jeśli można coś zrobić w sposób optymalny to czemu nie

16-05-2004 17:45
Pokaż profil DJK  Wyślij email do DJK   Odwiedź stronę DJK  
Wszystkich odpowiedzi: 10 :: Maxymalnie na stronę: 20
Strona: [  << <   1   > >>  ]  z  1