Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 8 odgovora
  • 4.582 pregleda

Najnovija ↓

Pomeranje Labela C# 07.02.2014. u 20:48 · pre 155 meseci #1
Imam kratko pitanje, da li je neko od vas pravio aplikaciju gde na winformi ima labela sa mogucnoscu pomeranja pozicije?
Ako jeste, da li ste ikad labelu pomerali u deo forme gde morate skrolovati na desno recimo(kada je maximizovana forma, vi hocete da pomerite u neki deo koji trenutno nije vidljiv) ?
Ako jeste, da li ste snimali labeline pozicije u bazu podataka i kasnije iscitavali ih ?
Ako je i ovde vas odgovor da, da li vam se labela prilikom prikazivanje forme pojavila na istoj poziciji gde ste je snimili ?
Re: Pomeranje Labela C# 08.02.2014. u 15:30 · pre 155 meseci #3
Nije, nego ja imam problem. Sve sam odradio, u bazu snima tacnu vrednost gde se nalazi ta labela, i kada je ocitava dobija nazad tacnu vrednost, ali jednostavno labela nije na istom mestu... A ako upisem rucno neku vrednost ona se tamo nadje.
Re: Pomeranje Labela C# 08.02.2014. u 15:45 · pre 155 meseci #5
private void lb_MouseDown(object sender, MouseEventArgs e)
{
isDragging = true;
clickOffsetX = e.X;
clickOffsetY = e.Y;
}

private void lb_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
if (isDragging == true)
{
Label lb = (Label)sender;
lb.Left = e.X + lb.Left - clickOffsetX;
lbr.Top = e.Y + lb.Top - clickOffsetY;
}
}

}

private void lb_MouseUp(object sender, MouseEventArgs e)
{
lb.Location = new Point(lb.Location.X, (ro * itemHeight) + y);
strip.X = lb.Location.X;
stripsForUpdate.Add(strip);
}

private void frmTest_Load(object sender, EventArgs e)
{
for(int i=1;i<=strips.Count;i++)
{
lb.Location = new Point(strips[i-1].X,150);
this.Controls.Add(lb);
}

}
ja ovde x vucem iz baze i kao sto rekoh vrednost je ok, ona koja je snimljena i koja je loadovana. Ali labela nije na svom mestu. A ako rucno upisem neku vrednost od X, labela bude na toj poziciji :S.
Re: Pomeranje Labela C# 08.02.2014. u 15:53 · pre 155 meseci #6
Code:
private void frmTest_Load(object sender, EventArgs e)
{
    for(int i=1;i<=strips.Count;i++)
   {
      lb.Location = new Point(strips[i-1].X,150);
      this.Controls.Add(lb);
    }
}


Ovde će labela lb ostati na poslednjoj poziciji. Ne mogu da vidim da li imaš više labela koje si već kreirao u dizajneru (lb1, lb2, itd.), ili bi trebalo da napraviš novu labelu u svakom prolazu:

Code:
private void frmTest_Load(object sender, EventArgs e)
{
    for(int i=1;i<=strips.Count;i++)
   {
      var lbl = new Label();
      lbl.Text = "Hello.";
      lbl.Location = new Point(strips[i-1].X,150);
      this.Controls.Add(lbl);
    }
}
Re: Pomeranje Labela C# 08.02.2014. u 16:12 · pre 155 meseci #7
U svakom prolazu pravim novu, jer ima vise. Ja se izvinjvam pravi kod ide ovako
Code:

private void frmTest_Load(object sender, EventArgs e)
{

    for(int i=1;i<=strips.Count;i++)
   {
      Label lbl = new Label();
      lb.Name = "Hello.";
      lb.Location = new Point(strips[i-1].X,150);
      this.Controls.Add(lb);

    }

}
 

Kako ja gledam na ovaj deo koda jeste, da svaka labela dobija svoju vrednost i postavlja se na formu po odredjenim koordinatama. Ali iz nekog razloga nece da postavi po X koordinati koja je u bazi.
Re: Pomeranje Labela C# 10.02.2014. u 09:19 · pre 155 meseci #8
Citat:
danchi88:A ako rucno upisem neku vrednost od X, labela bude na toj poziciji :S.
Ovo je moguce samo ako vrednost labeli rucno upisujes u nekom drugom momentu u odnosu na onaj kada to radis iz baze.
Mozda si zaboravio jos nesto da nam kazes: na primer da postoji neki kontejner koji sadrzi te labele, koji je npr anchorovan za neku stranu ili tako nesto.

Koje su vrednosti za strips[0] i label.Left pre i posle dodele kad stavis breakpoint?
Re: Pomeranje Labela C# 29.03.2014. u 10:15 · pre 153 meseca #9
Resio samo tako sto sam ukljucio vrednost skrolovanja.
Jer svaki put kada je skrolovano, program kao da resetuje vrednost pixela.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme