Setfocus
Hur gör man för att få markören "blå" eller setfocus när man skriver
Alltså bara just det tecknet där markören står
Sören
Svara
Sv: Setfocus
Det finns objekt som heter text1.SelText, .SelLen, .SelStart - med .Selstart kan du säga på vilken position i texten som cursorn skall stå och blinka på. Att ändra cursorn till blå kan jag inte svara på.
Svara
Sv: Setfocus
Tidigare svar som jag lämnat, antar att med "blå" markör menar att hela texten är markerad. Alltså ungefär samma svar som Pelle gav.
Prova gärnna att göra lite sökning på forumet först.
Hej, jag använder denna typ ibland.
Text1.SetFocus
Text1.SelStart = 0
Text1.SelLength = Len(Text1.Text)
Lämpligen bygger du en egen funktion för detta som du enkelt anropar när du så önskar.
Svara
Sv: Setfocus
Detta fungerar så att första tcknet blir "blåt"
Text1(index).SetFocus
Text1(index).SelStart = 0
Text1(index).SelLength = 1 'Len(Text1(index).Text)
Men den slutar att vara "blåt" när man för markören framåt över texten
Svara
Sv: Setfocus
Beskriv mer syftet med det du vill åstadkomma.
Den lösningen jag beskrev är Windows standard för att förenkla inmatning i fält.
Tänk på att inte hitta på något som blir lurigt och svårtolkat för användaren.
Svara
Sv: Setfocus
Om man har text i en textbox och märkören är i den,
då ska tecknet som finns framför markören bli "blå",
även om du för markören vidare över texten,
så ska den "blåa" rutan följa markören,
Alltså kan man väl säga att markören ska vara "blå"
Svara
Sv: Setfocus
Du skall alltså hela tiden ha ett tecken markerat?
Något i stil med
Text1(index).SelLength = 1
i TextBox_KeyUp borde kunna gå att trixa med. Du får nog kolla vilka knappar som trycks ner också.
Svara
Sv: Setfocus
Jag har mitt under
Private Sub Text1_GotFocus(index As Integer)
Text1(index).SetFocus
Text1(index).SelStart = 0
Text1(index).SelLength = 1 'Len(Text1(index).Text)
det kanske är fel
Svara
Sv: Setfocus
Efter lite testande kom jag fram till följande:
<code>
Private Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer)
If Text1.SelStart > 0 Then
Text1.SelStart = Text1.SelStart - 1
End If
Text1.SelLength = 1
Text1.SetFocus
End Sub
</code>
Det fungerar lite sådär halvbra. Frågan är om du har valt en vettig metod.
Det bästa brukar vara att låta kontrollerna fungera som vanligt.
Svara
Sv: Setfocus
Detta funkar som du skriver lite halv bra, om man klickar i text rutan med detta ex så blir inte markören "blå", utan bara ett vanligt streck, den blir ju blå så fort man rör sig framåt eller backåt
Kanske så lång man kan komma just nu
Får prova mig fram
Tack ändå
Svara
Sv: Setfocus
Ja, meningen är att du lägger in den i mousedown och gotfocus också, antar jag.
Problemet ligger i att den är lite för seg. Dels så ser man själva hoppet, dels så kan den bli lite knäpp om man skriver för snabbt.
Svara