Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 5 odgovora
  • 4.045 pregleda

Najnovija ↓

Kreiranje kontrole u runtime-u ( Access) 12.11.2004. u 00:03 · pre 267 meseci #1
Kod treba da u formi kreira TextBox. Za početak sam to zamislio da bude u eventu buttonclick - a, mada ne mora. Šta je bitno: pokušao sam sa kodom koji je u Accessu dat u helpu, ali nešto tu nije uredu. Kod je iz helpa sledeći( s tim što sam ja komentarisao nepotrebne linije koje kreiraju formu, a takođe; moja forma se zove Form1):
Code:

Private Sub Command2_Click()
NewControls
End Sub

Sub NewControls()
    'Dim frm As Form
    Dim ctlLabel As Control, ctlText As Control
    Dim intDataX As Integer, intDataY As Integer
    Dim intLabelX As Integer, intLabelY As Integer

    ' Create new form with Orders table as its record source.
    'Set frm = CreateForm
    'frm.RecordSource = "Orders"
    ' Set positioning values for new controls.
    intLabelX = 100
    intLabelY = 100
    intDataX = 1000
    intDataY = 100
    ' Create unbound default-size text box in detail section.
    Set ctlText = CreateControl(frm.Form1, acTextBox, , "", "", _
        intDataX, intDataY)
    ' Create child label control for text box.
    Set ctlLabel = CreateControl(frm.Form1, acLabel, , _
         ctlText.Name, "NewLabel", intLabelX, intLabelY)
    ' Restore form.
    DoCmd.Restore
End Sub


Greška se javlja u liniji : Set ctlText idt.... i dojavljuje Runtime error 424 (object required)
Unapred hvala na odgovorima
:)
Potpis
Ko kaže da je život fer?
Re: Kreiranje kontrole u runtime-u ( Access) 12.11.2004. u 14:53 · pre 267 meseci #2
Ako hoces da na formi koja je trenutno otvorena dodas novu kontrolu, to nece moci. Access dozvoljava programsko pravljenje kontrola samo na formama koje su otvorene u Design modu. Vidi ispod dve tri teme, Mika je hteo da uradi nesto tako i Darko mu je lepo objasnio zasto to ne moze. Access nije VB i nema nista slicno control arrays i ne mogu se dodavati kontrole u run time.

Tvoja greska se javlja jer si komentovao linije Dim frm as form i 'Set frm = CreateForm. Ako ih vratis, neces dobiti ovu gresku, ali ces dobiti neku drugu, pre toga. Komentovao si mnogo linija koda, a izgleda da su to linije iz originalnog koda. Ako si pocetnik u Accessu (makar bio i guru za VB), sacekaj malo sa ovakvim projektima. Nema puno ljudi u svetu koji znaju da barataju kontrolama u run time, prave wizarde i slicno. Oni koji znaju, uglavnom su napisali knjige o tome (K. Getz, A. Browne, A. Balter, R. Jennings) ali su oni licno tesko dostupni :-) pa nema ko da ti pomogne.

Znam da ti nisam mnogo pomogao, ali sta ces, tehnologija ima svoje granice.

:-)
Re: Kreiranje kontrole u runtime-u ( Access) 13.11.2004. u 00:38 · pre 267 meseci #3
Stvar je u tome da ne umem da (pametno) smislim neki drugi način za unos podataka. Naime, problem ( koji sam sam sebi postavio,po " eto tako - što da ne" modelu) je sa podatkom za koji ne znam koliko puta će trebati da se ponovi. Naprimer u sastavu jela sastojci: neka jela imaju manje a neka više sastojaka. Ako ko ima ideju, biću obaška zahvalan.
Potpis
Ko kaže da je život fer?
Re: Kreiranje kontrole u runtime-u ( Access) 13.11.2004. u 01:55 · pre 267 meseci #4
Taj problem mozes resiti koriscenjem sub form-e.
Znaci imas recimo relaciju Jelo - Sastojci.
Glavna forma pokazuje osnovne podatke o jelu, dok sub form-a (datasheet view) sluzi za unos/menjanje sastojaka i njihovo prikazivanje.
Potpis
All beer is good. Some beer is better.
Re: Kreiranje kontrole u runtime-u ( Access) 13.11.2004. u 23:15 · pre 267 meseci #5
Blagodarim!
Tako sam i rešio. Na formi "jelo" dugme "dodaj novi sastojak" otvara formu "unesi novi sastojak" koja apdejtuje tabelu sastojci.
Ipak, bez obzira, blagodarim.
:)
Potpis
Ko kaže da je život fer?
Re: Kreiranje kontrole u runtime-u ( Access) 21.11.2004. u 01:27 · pre 267 meseci #6
Kada kreiraš formu moraš je zatvoriti .
Set frm = CreateForm
With frm
.DefaultView = 1
.NavigationButtons = False
.PopUp = True
.Modal = True
End With
DoCmd.Close acForm, m, acSaveYes
DoCmd.SelectObject acForm, m, True
DoCmd.Rename "Imeforme", acForm, m
DoCmd.OpenForm "Imeorme", acDesign, , , , acHidden
e sad joj možeš dodavati kontrole
Samo ti ovo neće raditi u MDE jer MDE ne dozvoljava kreiranje forme.
Ako ne uspiješ dordit ću ti tvoj kod.
Potpis
zxz
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme