Gå til innhold

Aktivere en textbox ved start av program


Anbefalte innlegg

Heisann

 

Jeg bruker Visual Studio 2008.

 

Jeg har laget et program med med TabPages. Under hver tab er det en tekstboks hvor man kan skrive noe.

Hvordan kan jeg få programmet til å automatisk hoppe til textboxen på første tabben ved program start, og hoppe til textboxen under neste tab når den respektive tabben er blitt nedtrykt?

 

Et spørsmål til. Jeg har finni ut at man kan sette programmet til å åpne på et bestemt sted ved å angi X og Y posisjoner, men går det ann å sette at det f.eks skal åpnes midt på skjermen? Syntes det er en bedre løsning da brukerne kan ha forskjellige oppløsninger.

 

På forhånd takk

Lenke til kommentar
Videoannonse
Annonse
Heisann

 

Jeg bruker Visual Studio 2008.

 

Jeg har laget et program med med TabPages. Under hver tab er det en tekstboks hvor man kan skrive noe.

Hvordan kan jeg få programmet til å automatisk hoppe til textboxen på første tabben ved program start, og hoppe til textboxen under neste tab når den respektive tabben er blitt nedtrykt?

 

Et spørsmål til. Jeg har finni ut at man kan sette programmet til å åpne på et bestemt sted ved å angi X og Y posisjoner, men går det ann å sette at det f.eks skal åpnes midt på skjermen? Syntes det er en bedre løsning da brukerne kan ha forskjellige oppløsninger.

 

På forhånd takk

Har ikke VB.net installert nå, men i VB6 er det i alle fall en sak hvor du kan velge hvor på skjermen programmet skal starte opp, anntar det er det samme på VB.Net, klikk på formen så går du i propertise vinduet så er det vel "Center" funksjon eller noe sånt der..

Lenke til kommentar

Har du i det hele tatt lett? Hva med propertyen til WinFormen som heter "StartPosition"?

 

Hvis du legger en event på SelectedTabChanged, eller hva den heter, så kan du jo der sjekke hvilken tab som er selected, og da sette "Focus()" eller hva det blir på den tekstboksen du skal ha careten i.

Lenke til kommentar

Manfred: Den har jeg faktisk oversett helt :blush: , og JA, jeg har lett, men ikke gått nok! Takk skal du ha!

 

Tekstboksen på den første taben er satt til TabIndex 0, men den aktiveres ikke for input automatisk ved program start.

 

Hvis du legger en event på SelectedTabChanged, eller hva den heter, så kan du jo der sjekke hvilken tab som er selected, og da sette "Focus()" eller hva det blir på den tekstboksen du skal ha careten i.

 

Det der sa meg ingen ting. Kan du kanskje være litt mer spesifikk?

Lenke til kommentar
Det der sa meg ingen ting. Kan du kanskje være litt mer spesifikk?

Eksempelkode sier mer enn tusen ord:

Private Sub TabControl1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TabControl1.SelectedIndexChanged
TabControl1.SelectedTab.Controls.OfType(Of TextBox).First.Select()
End Sub

Endret av aadnk
Lenke til kommentar

Jeg klarte det selv nå! :D

 

Satte en timer på hver tab som gav textboxen på den tabben focus etter 1. millisekund.

 

Vet dette ikke er en bra måte å gjøre det på, for da får jeg ikke brukt tab knappen for å komme opp på tabbene. Så hvis det er noen som har en bedre ide, så spytt ut!

Endret av miXer
Lenke til kommentar

aadnk:

 

Så ikke innlegget som du hadde lagt inn 1 minutt før meg! :whistle:

Det var en mye bedre måte ja! Det funket utmerket! Tusen takk

Måtte legge til i eventen shown "TextBox1.Focus()" slik at programmet gav fokus til textbox1 ved program start.

 

Nå fungerer alt utmerket!

Takk for all hjelp!

Lenke til kommentar

Et lite spørsmål til.

 

Jeg vet at man ved [process.start("www.google.no")] kan åpne www.google.no i default webleser.

Men hvordan kan jeg åpne www.google.no i en webleser som jeg angir?

Jeg har laget en checkbox og angitt koden slik at når den er avkrysset skal texten i tekstboxen sendes til webleseren som er angitt og ikke default webleser.

 

If CheckBox1.Checked Then

process.start("C:\Programfiler\Opera\Opera.exe" & talatut & TextBox5.Text & talatut2)

TextBox5.Clear()

CheckBox1.Checked = False

Else

Process.Start(talatut & TextBox5.Text & talatut2)

TextBox5.Clear()

End If

 

 

Fant det ut selv nå..

 

Skrev bare process.start("C:\Programfiler\Opera\Opera.exe", talatut & TextBox5.Text & talatut2) ;)

Endret av miXer
Lenke til kommentar
Det å hardkode "C:\Programfiler\" er vel en liten uting.

 

Bruk heller denne:

 

Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles)

 

Kunne du gitt meg et eksempel på hvordan jeg kan bruke den? F.eks å bruke opera som er C:\Programfiler\Opera\Opera.exe

Det hadde hjulpet meg masse!

Endret av miXer
Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...