I dette særtema om aspekter af AI ser vi på skiftet fra sprogmodeller til AI-agenter, og hvordan virksomheder kan navigere i spændet mellem teknologisk hastighed og behovet for menneskelig kontrol.
procedure TForm1.Button1Click(Sender: TObject); var i : integer; begin edit1.Clear; for i := 0 to combobox1.Items.Count - 1 do edit1.Text := edit1.Text +combobox1.Items[i] +' '; // mellemrum for et syns skyld
Det kan altså ikke passe at så mange er ordblinde på Eksperten. Der må være nogen der også bare er sjuskede og ikke gør sig umage med at skrive i et klart og forståeligt sprog. Det vil også gøre vores, os der prøver at svare, arbejde noget lettere.
LamaDuck du er én af dem.
... og jeg beklager hugget, men kan ikke forstå, at der er så mange der kun kan skrive SMS-dansk. Det er frustrerende at se fremtidens voksne have så dårlige kort på hånden. Forestil dig en jobansøgning i ovenstående kvalitet - jeg ville få et føl (på tværs denne gang) og dumpe den med det samme.
Tilbage til spørgsmålet:
En TComboBox har en style-property som du kan sætte til følgende: csDropDown: En Combo hvor du kan skrive i feltet csDropDownList: En Combo hvor du kun kan vælge fra listen csOwnerDrawFixed: En Combo hvor man selv tegner indholdet i comboen - med fast højde csOwnerDrawVariable: En Combo hvor man selv kan bestemme højden på hver linie i listen csSimple: Nærmest TEdit med en fast liste af valgmuligheder. Bruges ved f.eks. auto-complete indtastning. Indeholder listen "quick" og du skriver "q" så foreslår den resten
Antager at du ikke har ændret den, så den er csDropDown. Hvis det du skriver i comboen (i csDropDown) skal føres over i TEdit'en, så skal du bruge TComboBox-eventen OnChange-event og skrive følgende:
Edit1.Text := ComboBox1.Text
eller lidt mere elegant:
Edit1.Text := (Sender as TComboBox).Text; // Idet sender er TComboBox'en
Håber det kan hjælpe.
Som sagt, beklager huggene, men det er rædderligt at læse og jeg tror mange kan gøre det bedre. Nu jeg er i gang, så kunne stony godt lave lidt indryk på sit kode:
procedure TForm1.Button1Click(Sender: TObject); var i : integer; begin Edit1.Clear; for i := 0 to ComboBox1.Items.Count - 1 do Edit1.Text := Edit1.Text + ComboBox1.Items[i] + ' '; // mellemrum for syns skyld end;
1: har aldrig været på nogle gode skoler hvor jeg har kunne lære det (aldrig lært om , og . osv og det samme med matematik hvor jeg ikke har lært meget om at divider osv)
2: tror ikke det er sms sprog jeg har da jeg aldrig bruger sms eller får nogle
3: kan da heller ikke passe andre skal hakke ned på andre (som du gør) bare forde du åbenbart har være nogle stædre hvor du kunne lære det
så skal du til at kigge på objecter og/eller pointere. Det er lidt mere komliceret, jeg kan lave et eks. senere. Har ikke tid lige nu. Ellers kig selv i hjælpen
Du må forstå, at jeg ikke hakker på dig i almindelighed - det er ikke et personligt angreb. Synes bare jeg ser alt for megen dårlig formulering på Eksperten og det er sgu ikke let at se hvad der menes.
Du skal lige prøve at læse teksten igen. Jeg skriver, at du skal bruge comboens OnChange-event. Det er en klump kode som kaldes hver gang noget ændres i teksten. Vælg comboboksen og klik på fanebladet "Events" i "Object Inspector" (F11) og dér dobbeltklik i OnChange-feltet.
I den kode der kommer frem skriver du
Edit1.Text := (Sender as TComboBox).Text;
Kør programmet (F9) og prøv at skrive i comboen eller vælg fra listen. Alt du gør bliver skrevet i TEdit'en.
Er problemet at du skal have ting ind i listen? I førnævnte "Object inspector" klikker du nu på "Properties" og finder linien "Lines". Klik på den og klik på den "..." knap der kommer frem.
Ole Monrad har skrevet en dansk Delphi-bog som let kan findes på biblioteket. Den starter fra bunden og kan sikkert hjælpe dig.
stoney: Måske var jeg lige en tand for mavesur, men jeg forstod ikke en dyt af det der burde være et meget let spørgsmål (5 point) - og det er tit det er sådan på Eksperten.
stoney: Desuden - og det er i samme ånd som Borrisholt's afskedssalut - hvis man vil lære noget, så starter det med at man søger oplysninger, såsom at låne en bog på biblioteket og efterfølgende læse den. Man skal kravle før man kan gå og LamaDuck bør lave sin første "Hello World", ligesom vi gjorde det 6-7 Delphi versioner siden.
Eksperten er ingen genvej til kundskaber, dem skal der arbejdes for.
Altså hvis du vil definere de items (valgmuligheder) der skal være i din ComboBox inden programmet startes skal du kigge på Lines i Object Inspectoren. Der kan du tilføje linjer med tekst ved at trykke på '...'. Hvis du ikke vil at man skal kunne skrive i Comboboxen skal du, som hrc siger, sætte Comboboxenx's Style-property i Object Inspectoren til csDropDownList.
hrc> jeg forstår godt hvad du mener. Men hvis lamaduck er "grøn" i Delphi kan det være svært at vide hvad man skal søge efter i hjælpen. Omkring stavning kan du jo skrive et ISAPI plugin/stavekontrol til Eksperten :-) Forudsat de kører IIS
Jeg er tilbøjelig til at give HRC ret. Jeg sidder selv tit og krummer tæer over de, til tider, hjælpeløse stavemåder der bruges her på sitet. Det giver mig fornemmelsen af at det er nogle halve analfabeter, der ønsker at være programerings eksperter. Det hænger tit meget godt sammen, hvis man vil være god til at programmere, så skal indersiden af hovedet være tip top iorden, man skal være systematisk og have øje for detaljer, ellers får man aldrig noget til at fungere. Og som der står i vejledningen til sitet her, så skal man formulere sine spørgsmål klare og præcise.
procedure TForm1.ComboBox1Change(Sender: TObject); var Txt: String begin Txt := ComboBox1.Items[ComboBox1.ItemIndex]; ... // Foretag nogle beregninger på Txt. // F.eks klippe noget af, eller klistre noget på. ... Edit1.Text := Txt; end;
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.