Využij akce až 80 % zdarma při nákupu e-learningu. Více informací.
Pouze tento týden sleva až 80 % na e-learning týkající se Pythonu
python week
Avatar
Miroslav Sadko:24.8.2020 20:59

(visual basic) po kliknuti na Button1 sa vykresli 60 textbox - ov na plochu, vsetky maju biele pozadie
nedokazem zmenit farbu pozadia "back color" textoveho pola na ktore kliknem misou

Zkusil jsem: skusal som zistit polohu kurzora nad text boxom, skusal som zistit index textboxu do ktoreho kliknem

Chci docílit: zmenit farbu pozadia textboxu podla toho do ktoreho kliknem miskou

 
Odpovědět
24.8.2020 20:59
Avatar
zelvicek
Člen
Avatar
zelvicek:25.8.2020 6:21
  1. Proč jsi zkoušel zjistit polohu kurzoru na text boxem?
  2. Proč jsi zkoušel zjistit index textboxu, do kterém klikáš?

Z uvedeného mi připadá, že potřebuješ jen instanci daného textboxu.

  1. Zadání je celkem triviální, zkus jej podledat na internetu.
 
Nahoru Odpovědět
25.8.2020 6:21
Avatar
Odpovídá na zelvicek
Miroslav Sadko:25.8.2020 8:51

Dakujem za reakciu.
Stravil som vela casu hladanim na internete ale vstci riesia iba textbox-y vytvorene vizualom. Ak ich vyrobim v priebehu spusteneho programu tak vznikne moj problem. Tu je jednoduchy priklad . Na ploche je iba jedno tlacidlo "Button1":

Public Class Form1
    Public Shared RI As New Collection
    Dim tb As New TextBox
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim i As Integer
        Dim j As Integer
        For i = 1 To 10
            For j = 1 To 6
                tb = New TextBox
                tb.Size = New Size(22, 22)
                tb.Location = New Point(j * 22, i * 22)
                RI.Add(tb)
                Me.Controls.Add(tb)
            Next j
        Next i
    End Sub
End Class
 
Nahoru Odpovědět
25.8.2020 8:51
Avatar
zelvicek
Člen
Avatar
Odpovídá na Miroslav Sadko
zelvicek:25.8.2020 11:53

Stále ještě nechápeš pointu, k níž se tě stažím dotlačit.

  1. Jak zjistit, na jaký textbox bylo kliknuto? NEBO Jak odchytit, že na textbox bylo kliknuto?
  2. Prvky vytvořené "vizualom" nejsou žádné magické. Jsou vytvářené při konstruktoru (nebo je to load?) formu. Je to úplně stejné, jako je vytváříš ve své subroutine.
  3. Domnívám se, že vše potřebné už máš/znáš, jen si to uvědomit.
 
Nahoru Odpovědět
25.8.2020 11:53
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
Miroslav Sadko:26.8.2020 23:20
  1. Jak zjistit, na jaký textbox bylo kliknuto? - toto je muj problem
  2. Po kliknuti do niektoreho textboxu mi to odskoci do podprogramu "vymalujbunku" len neviem zistit o ktory textbox sa jedna
  3. ani googl ani kamarati ani ja ???
 
Nahoru Odpovědět
26.8.2020 23:20
Avatar
Miroslav Sadko:27.8.2020 16:13

Takze takto to konecne funguje:

Public Class Form1
    Public Shared RI As New Collection
    Dim tb As New TextBox
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim i As Integer
        Dim j As Integer
        For i = 1 To 10
            For j = 1 To 6
                tb = New TextBox
                tb.Size = New Size(22, 22)
                tb.Location = New Point(j * 22, i * 22)
                RI.Add(tb)
                AddHandler tb.Click, AddressOf TBox_Click
                Me.Controls.Add(tb)
            Next j
        Next i
    End Sub
    Private Sub TBox_Click(ByVal sender As Object, ByVal e As System.EventArgs)
        CType(sender, TextBox).BackColor = Color.LightCoral
    End Sub
End Class

Dakujem za dotlacenie k rieseniu ;-)

 
Nahoru Odpovědět
27.8.2020 16:13
Avatar
zelvicek
Člen
Avatar
Odpovídá na Miroslav Sadko
zelvicek:28.8.2020 6:25

Tak gratuluju.
P.S. Tu collection RI už možná taky nepotřebuješ - tedy alespoň pro obarvování.

 
Nahoru Odpovědět
28.8.2020 6:25
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.