mojaSymfonia FORUM
https://forum.mix-soft.pl/

Elementy w tablicy
https://forum.mix-soft.pl/viewtopic.php?f=15&t=1815
Strona 1 z 1

Autor:  zz [ 2010-03-05, 14:27 ]
Tytuł:  Elementy w tablicy

Chcę sprawdzić, czy początek nazwy dostawy odpowiada jednej z kilku zadeklarowanych wartości.
Jak mogę użyć tablicy do wpisania tych kilku danych?

Autor:  wrob [ 2010-03-05, 18:49 ]
Tytuł: 

A konkretniej? Bo opis jak deklarowac tablice masz w helpie i do VBA i do ambasic a jak przeleciec/porownac elementy z tablicy uzywajac while czy tez for to chyba wiesz...

Autor:  darek.007 [ 2010-03-07, 20:42 ]
Tytuł: 

do sprawdania czy jakaś wartość istnieje w tablicy...

lepiej używać mapvalue - też opisane w helpie

Autor:  zz [ 2010-10-24, 22:09 ]
Tytuł: 

OK.
Mam tablicę 3-elem.: AB, CD, EF. Wyświetlam to na formatce jako CmbBox.
Jak znaleźć/wyświetlić wartość wybranego elementu listy?

Autor:  darek.007 [ 2010-10-24, 22:16 ]
Tytuł: 

help to dość jasno tłumaczy...





Polecenie tworzy w oknie dialogowym pole kombinowane zawierające nieedycyjne pole oraz rozwijaną listę.

Składnia
Int CmbBox String nazwa, String tablica (n), String nazwaElem, Int x0, Int y0, Int dx, Int dy
lub

Int CmbBox String nazwa, String tablica (n), Int nrElem, Int x0, Int y0, Int dx, Int dy
Argumenty

String nazwa Nazwa umieszczona z lewej strony pola kombinowanego. Umieszczenie w nazwie znaku & powoduje wyświetlenie następnego po nim znaku z podkreśleniem, przez co aktywny staje się klawisz skrótu: Alt + podkreślona litera.
String tablica ( n ) Tablica zmiennych typu String, stanowiących zawartość rozwijanej listy pola kombinowanego.
String nazwaElem Nazwa wybranego elementu tablicy. Ten element będzie widoczny po otwarciu okna dialogu.
Int nrElem Numer wybranego elementu tablicy. Ten element będzie widoczny po otwarciu okna dialogu.
Int x0 Odległość lewej krawędzi pola kombinowanego od lewej krawędzi okna dialogowego, liczona w pikselach.
Int y0 Odległość górnej krawędzi pola kombinowanego od górnej krawędzi okna dialogowego, liczona w pikselach.
Int dx Szerokość pola kombinowanego, liczona w pikselach.
Int dy Wysokość pola kombinowanego, liczona w pikselach.
Wartość zwracana
Identyfikator pola kombinowanego.

Przykład
//Zdefiniowanie tablic elementów

String tablica_pozycji_pk (8) = "Poz1k","Poz2k","Poz3k","Poz4k","Poz5k","Poz6k","Poz7k","Poz8k"

String pozycja_pk

String tablica_pozycji_pl (8) = "Poz1","Poz2","Poz3","Poz4","Poz5","Poz6","Poz7","Poz8"

Int pozycja_pl

Form "Pole kombinowane i lista", 500, 300

//Określenie położenia, zawartości i aktywnego elementu pola kombinowanego

pozycja_pk = "Poz4k"

CmbBox "Pole kombinowane", tablica_pozycji_pk, pozycja_pk, 150,50, 100, 90

//Określenie położenia, zawartości i aktywnego elementu listy pozycji pola listy

pozycja_pl = 5

LBox "Lista", tablica_pozycji_pl, pozycja_pl, 350,50,100,90, Message "Klikałeś"

Button "Zamknij okno", 150, 180, 200, 24, -1

//Wyświetlenie zdefiniowanego okna

ExecForm

Error ""
[/i]

Autor:  zz [ 2010-10-25, 08:24 ]
Tytuł: 

Ale zdanie: "Wartość zwracana - identyfikator pola kombi" niewiele mi mówi.
I dalej nie wiem, jak mogę wyświetlić/wyszukać wybraną wartość :(

Autor:  darek.007 [ 2010-10-25, 10:17 ]
Tytuł: 

według mnie są 2 sposoby


Int CmbBox String nazwa, String tablica (n), String nazwaElem, Int x0, Int y0, Int dx, Int dy
message nazwaElem


lub

Int CmbBox String nazwa, String tablica (n), Int nrElem, Int x0, Int y0, Int dx, Int dy
message tablica(nrElem)

Autor:  zz [ 2010-10-25, 13:30 ]
Tytuł: 

Ale wtedy bez względu na to, który element 'przyklikam' wyświetla mi się ten zadeklarowany jako początkowy.

Autor:  darek.007 [ 2010-10-25, 14:07 ]
Tytuł: 

a mi nie :)


string sWybrales, sPom(5) = "1","2","3","4","5"
int i = 2


form "okno", 300, 150

cmbBox "x", sPom, sWybrales, 10,10,100, 50


button "OK", 30, 105, 70, 24, 2
button "Anuluj", 120, 105, 70, 24, -1
int rv = execform

message sWybrales
[/i]

Autor:  zz [ 2010-10-25, 14:27 ]
Tytuł: 

Działa <hurra>

ale w helpie jest tak:
Cytuj:
String tablica_pozycji_pk (8) = "Poz1k","Poz2k","Poz3k","Poz4k","Poz5k","Poz6k","Poz7k","Poz8k"
String pozycja_pk
Form "Pole kombinowane", 500, 300
pozycja_pk = "Poz4k"
CmbBox "Pole kombinowane", tablica_pozycji_pk, pozycja_pk, 150,50, 100, 90
Button "Zamknij okno", 150, 180, 200, 24, -1
ExecForm
message pozycja_pk

i nie działa (tzn. działa, ale źle)

Autor:  rafal [ 2010-10-25, 14:44 ]
Tytuł: 

Kod:
String tablica_pozycji_pk (8) = "Poz1k","Poz2k","Poz3k","Poz4k","Poz5k","Poz6k","Poz7k","Poz8k"
String pozycja_pk


int sub OnCommand(int id, int msg)

   save   

endsub


Form "Pole kombinowane", 500, 300
pozycja_pk = "Poz4k"
CmbBox "Pole kombinowane", tablica_pozycji_pk, pozycja_pk, 150,50, 100, 90
Button "Zamknij okno", 150, 180, 200, 24, -1
ExecForm(OnCommand)



message pozycja_pk

Autor:  zz [ 2010-10-25, 15:28 ]
Tytuł: 

Cały mój problem tkwił chyba w wartości zwracanej przez przycisk "Zamknij okno"

Jeśli zwraca wartość 2 - jest OK, jeśli -1 - jest anulowanie.

Autor:  rafal [ 2010-10-25, 20:10 ]
Tytuł: 

a ja do tej pory nie wiem co chciałeś osiągnąć i w czym był problem :)

Strona 1 z 1 Strefa czasowa UTC+1godz. [letni]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/