» »

VB6 Option Buttons

VB6 Option Buttons

Skoky ::

Živjo!

Sem nov tukaj, tko da mi ne zamerit, če bom kakega kozla ustrelil.

Problem je pa takle:

Imam eno formo, ki je povezana z Access bazo in v tej bazi so 4 različni stolpci, pri katerih se vrednosti spreminjajo z opcijami. Zdej moram pa jaz naredit to zadevo tolk dinamično, da bo lahko uporabnik sam spreminjal število opcij. A ma kdo kako idejo ,kako to čimbolj simpl nardit? Opcija je da imam samo en option button array, in se potem kot vrednosti vpisujejo indexi ampak v tem primeru se mi zdi da je zadeva mal težka, ko bo hotel uporabnik spreminjati število opcij v posameznih poljih.

LP
Skoky

rabbit-zek ::

Problem si doobro opisal samo mi povej kaj te najbolj muči .... v bistvu če sem prav razumel bi rad naredil formo z option boxy ?? tak nekak iz teh option boxov po vnosu pa shranil v bazo ???

Skoky ::

V bistvu me najbolje muči to realizirat. V bazi imam eno tabelo ki se ji reče Config in tukaj je zapisan izgled forme. Tako lahko uporabnik zadeve spreminja, ob sprembi pa se zadeva vpiše v bazo.

Zanima me ali je možno dinamično ( run-time ) kreiranje option buttonov ( tko da bi mel npr. opt1(0 - 4), opt2( 0-2 ), opt3( 0-7 ), opt4( 0-10 ))
ker v tem primeru je zadeva enostavna saj ima polje enako ime in se noter vpisujejo indexi uporabnik pa potem samo določa število opcij in imena option buttonom.

Aha BTW. na user design formi imam tudi en listbox, kjer so izlistana vsa neuporabljena polja iz baze. Klik na polje in vneseš nastavitve ( v opt primeru število opcij in imena posameznih opcij )

Lp
Skoky

Fim ::

OptionsButton in vse VB polja oz labele so shranjeni v tabeli (array) ImePolja(i)

Jaz bi to rešil na sledeč način:

-Ugotoviš koliko optButtons potrebuješ (iz baze)
-Naredi prvega na roko in nato vse ostale glede na obstoječega iz kode
-Na OnLoad forme naredi for zanko in se skozi njo zapelji tolikokrat kolikor gumbov potrebuješ -1 ker enega že imaš:
For i = 2 To KolikoOptions
Load optButton(i)
optButton(i).Caption = optButtonCaption
optButton(i).Top = optButtonTop
optButton(i).Left = optButtonLeft
optButton(i).Visible = True
optButton(i).MousePointer = vbCustom
optButton(i).MouseIcon = LoadPicture(slikica)
optButton(i).Value = False
......
Next i
seveda pa pravilno nastavi lastnosti Caption, Top, Left,... Le te boš verjetno vzel iz tvoje tabele, pozicijo pa izračunaj glede na obstoječega
Pa preden greš generirati nove gumbe stare uniči:
For i = 2 To optButton.UBound
Unload optButton(i)
Next i

Upam, da sem kaj pomagal...

rabbit-zek ::

V bistvu če ima uporabnik možnost, da izbere samo eno vrednost, bi jaz raje uporabil combobox, če pa jih je več pa checkListBox oz listbox!

To je moje mnenje ampak ta rešitev, ki jo je omenil Fim tudi ni slaba.

Zgodovina sprememb…

Skoky ::

Hvala obema za odgovor!

FIM:
Tole kar si napisal je super, sicer to isto stvar že uporabljam za textbox in label. Vendar se mi zdi da je vseeno pri telih option buttons mal drgač zadeva. No bom dal konkreten primer:
Maš eno polje Sadje, drugo polje Rože, tretje pa Zelenjava. Na začetku paše pod Sadje: jabolka in hruške, pod Rože Tulipani in Vrtnice ter Zelenjava je Solata in Špinača.
To so 3-je frami vsak z dvema option buttonoma. V polje v bazi se vpisuje npr. samo index ( v primeru ki ga je dal FIM, btw. o tem sem razmišljal tudi sam vendar gremo naprej ). No sedaj se bo pa uporabnik odločil, da bi posadil še Čebulo in Korenje ter posadil še Narcise. Torej je treba k enemu framu dodati še en option button k drugemu pa dva. ( sej čedalje bolj ko tuhtam sploh ni tolk komplicirano tole ). Pol pa recimo da je sezona Solate mim in bo vrgu Solato ven. ( btw. recimo da so v bazi njive...
:) ker drugače tole nima smisla. ...
Bom tole še mal probal pa se vam oglasim.

PS: Mogoče je pa res za razmislit o list boxu.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

python -slovar

Oddelek: Programiranje
223122 (2101) Valex86
»

JAVA SDK - namestitev

Oddelek: Programiranje
122512 (1610) cobrica
»

visual basic 2008 express edition

Oddelek: Programiranje
221808 (1235) sel
»

Naključno izbiranje v VB 6

Oddelek: Programiranje
181662 (1419) gligoran
»

Vtis Gentoo Linux 1.4

Oddelek: Operacijski sistemi
211374 (1138) Brane2

Več podobnih tem