qdos Skrevet 6. mai 2003 Del Skrevet 6. mai 2003 1: Kan jeg konfigurere en CheckListBox slik at en linje blir valgt ved at man klikker enten på selve avkryssingsboksen eller på selve teksten i linjen? 2: Kan jeg konfigurere et Edit-felt slik at markøren automatisk hopper til neste Edit-felt når man har skrevet et visst antall karakterer i det første Edit-feltet? Lenke til kommentar
Magellan Skrevet 6. mai 2003 Del Skrevet 6. mai 2003 1: Har funnet en måte å gjøre det på. Poster hele koden sånn at du skjønner måten jeg har gjort det på. Du ser poenget med CanClick variabelen viss du tar bort den og CheckListBox1ClickCheck. Da blir det ikke mulig å velge ved å trykke på avkryssningsboksen. unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, CheckLst; type TForm1 = class(TForm) CheckListBox1: TCheckListBox; procedure CheckListBox1Click(Sender: TObject); procedure CheckListBox1ClickCheck(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; CanClick : Boolean; implementation {$R *.dfm} procedure TForm1.CheckListBox1Click(Sender: TObject); begin if CanClick then with CheckListBox1 do if not Checked[ItemIndex] then State[ItemIndex] := cbChecked else State[ItemIndex] := cbUnchecked else CanClick := True; end; procedure TForm1.CheckListBox1ClickCheck(Sender: TObject); begin CanClick := False; end; procedure TForm1.FormCreate(Sender: TObject); begin CanClick := True; end; end. 2: Dette gjør du ganske enkelt ved hjelp av SelectNext slik: procedure TForm1.Edit1Change(Sender: TObject); begin if Length(Edit1.Text) > (Edit1.MaxLength - 1) then begin SelectNext(Edit1, True, True); end; end; Lenke til kommentar
kilogram Skrevet 6. mai 2003 Del Skrevet 6. mai 2003 1: Kan jeg konfigurere en CheckListBox slik at en linje blir valgt ved at man klikker enten på selve avkryssingsboksen eller på selve teksten i linjen? Det er heilt sikkert ei instilling for dette, men eg har ikkje Delphi foran meg for øyeblikket. Leit og du skal finne... 2: Kan jeg konfigurere et Edit-felt slik at markøren automatisk hopper til neste Edit-felt når man har skrevet et visst antall karakterer i det første Edit-feltet? Japp. I Edit.OnChange skriv du følgande; if Length(Edit.Text) >= VissLengde then Edit2.SetFocus; if Length(Edit.Text) > VissLengde then Edit.Text := Copy(Edit.Text, 0, VissLengde); Med forbehold om off-by-1-feil. Du kan og bruke dei to første linjene i Edit.OnEnter, då vil fokus flytta seg direkte til Edit2 dersom Edit allereie er full. Dette er ikkje anbefalt, sidan det då vil vere vanskelig å slette noko i Edit. Lenke til kommentar
qdos Skrevet 6. mai 2003 Forfatter Del Skrevet 6. mai 2003 Takk for løsningene. Jeg får ikke gjort noe med det i kveld, men nå slipper jeg i alle fall å rive av mer hår Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå