11. marts 2002 - 20:25Der er
8 kommentarer og 2 løsninger
Hvordan læser man en trackbar ?
procedure TForm4.Button1Click(Sender: TObject); var Registry: TRegistry; begin Registry:=TRegistry.Create; Registry.RootKey:=HKEY_LOCAL_MACHINE; Registry.Createkey('\software\netdex'); Registry.OpenKey('\software\netdex',True); Registry.WriteCurrency('EditFelt', Trackbar1); Registry.Free; end;
Jeg har følgende kode, og har lavet en fin TrackBar, nu vil jeg have skrevet resultatet ind i min regdatabase.. Men ved ikke hvordan jeg kan se hvad jeg skal skrive. Fandt nogle oplysninger på nettet hvor jeg kunne se at En tekst strike (edit-boks) skal hedde: Registry.WriteString('EditFelt', Edit1.Text);
Og en CheckBox skal hedde Registry.WriteBool('Checkbox', CheckBox1.Checked);
Men hvor kan jeg se hvad alt det andet skal hedde ? og hvad hedder en TrackBar =) som i kan se har jeg selv prøvet, uden held:
procedure TForm4.Button1Click(Sender: TObject); var Registry: TRegistry; begin Registry:=TRegistry.Create; Registry.RootKey:=HKEY_LOCAL_MACHINE; Registry.Createkey('\software\netdex'); Registry.OpenKey('\software\netdex',True); Registry.WriteInteger('EditFelt', Trackbar1.Position);//Brug ReadInteger når du skal løse Registry.Free; end;
Du kunne også: Registry.WriteString('EditFelt', inttostr(Trackbar1.Position)); Trackbar1.Position := strtoint(Registry.Readstring('EditFelt'));
Label1.Caption := Registry.ReadString('EditFelt'); Nu har jeg lavet en der aflæser min "value" fra Regedit, hvordan får jeg den frem igen ? nu laver den fejl i ReadString??
Ved ikke helt hvad du mener, før du forsøger at læse en værdi skal du måske overveje at checke om den er der: If valueexists('EditFelt') then Label1.Caption := Registry.ReadString('EditFelt');
men den laver stadig fejl: failed to get datafrom from editfelt1
KODEN ER GEMMER:procedure TForm4.Button1Click(Sender: TObject); var Registry: TRegistry; begin Registry:=TRegistry.Create; Registry.RootKey:=HKEY_LOCAL_MACHINE; Registry.Createkey('\software\netdex'); Registry.OpenKey('\software\netdex',True); Registry.WriteCurrency('EditFelt', Trackbar1.position); Registry.Free; end;
KODEN DER HENTER:
procedure TForm4.FormShow(Sender: TObject); var Registry: TRegistry; begin Registry:=TRegistry.Create; Registry.RootKey:=HKEY_LOCAL_MACHINE; if Registry.keyexists('\software\netdex') then Registry.OpenKey('\software\netdex',True); Label1.Caption := IntToStr(Registry.ReadInteger('EditFelt')); Registry.Free; end;
hvad er det du prøver på at gemme= text eller tal?
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.