/
Forside
/
Teknologi
/
Udvikling
/
VB/Basic
/
Nyhedsindlæg
Login
Brugernavn
*
Kodeord
*
Husk mig
Brugerservice
Kom godt i gang
Bliv medlem
Seneste indlæg
Stil et spørgsmål
Skriv et tip
Pointsystemet
Kontakt Kandu.dk
Emnevisning
Kategorier
Alfabetisk
Karriere
Interesser
Teknologi
Reklame
Top 10 brugere
VB/Basic
#
Navn
Point
1
berpox
2425
2
pete
1435
3
CADmageren
1251
4
gibson
1230
5
Phylock
887
6
AntonV
790
7
strarup
750
8
Benjamin...
700
9
tom.kise
610
10
EXTERMINA..
600
Gem Controls fra Form i registry - Hvordan~
Fra :
bnj
Dato :
11-10-01 13:11
Jeg har et problem med at gemme controls fra en form til registry - PÆNT -
altså på en ikke hackeragtig måde!
Ikke noget med On Error Resume Next o.s.v.!!
****************************************************
PROBLEM:
Jeg vil gerne gemme controls, med et navn hvor deres eventuelle "index"
indgår!
Men jeg kan ikke teste Controls fra Forms.Control for om de er arrays eller
ikke!..
f.eks:
Dim Opt as OptionButton
Dim OptArray(2) as OptionButton
Dim ControlName As String
ControlName = OptArray.name & CStr(OptArray.index)
...
det går fint. men..
ControlName = Opt.name & CStr(Opt.index)
går ikke fint, da Index ikke er defineret (det er jo ikke et array).
derfor kan man benytte:
if IsArray(Opt) then
ControlName = Opt.name & CStr(Opt.index)
Else
ControlName = Opt.name & "0"
End if
MEN!
IsArray virker ikke på Object eller på Control typen (tilsyneladende)
********************************************
Her er lidt mere kode der forklarer sammenhængen:
Public Sub GetFormControls(frm As Form)
Dim c As Control
Dim name As String
For Each c In frm.Controls
If c.Tag <> "X" Then ' Use tag to indicate that the control should not
be saved
' Virker IKKE
**************
If Not IsEmpty(c.Index) Then
name = c.name & c.Index
Else
name = c.name
End If
' Virker heller IKKE
******************
If IsArray(c) Then
name = c.name & c.Index
Else
name = c.name
End If
Debug.Print "Get:" & name
If TypeOf c Is OptionButton Then
c.Value = GetSetting(App.Title, frm.name, name, c.Value)
End If
If TypeOf c Is CheckBox Then
c.Value = GetSetting(App.Title, frm.name, name, c.Value)
End If
'.
' og så videre
'.
End If
Next c
End Sub
Søg
Alle emner
Teknologi
Udvikling
VB/Basic
Indstillinger
Spørgsmål
Tips
Usenet
Reklame
Statistik
Spørgsmål :
177821
Tips :
31980
Nyheder :
719565
Indlæg :
6410980
Brugere :
218912
Månedens bedste
Årets bedste
Sidste års bedste
Copyright © 2000-2026 kandu.dk. Alle rettigheder forbeholdes.