Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

TabControl boja ??

[es] :: .NET :: TabControl boja ??

[ Pregleda: 3661 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

dr.AgOlO
Milan D.
MunZe

Član broj: 16417
Poruke: 95
*.beotel.net.



Profil

icon TabControl boja ??06.01.2005. u 18:26 - pre 234 meseci
Interesuje me da li postoji mogucnost da se promeni boja ovoj kontroli, ali kad kazem boja mislim bas na boju tab-ova a ne boju tabPages-a. Znaci oni dugmici na koje klikcem kada prelazim sa jednog taba na drugi trebaju da budu recimo plave boje a ne one standardne sive.

Hvala unapred.
Poz.
 
Odgovor na temu

ZokiR
Zoran Radojković
Melburn, Australija

Član broj: 15986
Poruke: 109
*.gpm.net.au.



Profil

icon Re: TabControl boja ??06.01.2005. u 23:33 - pre 234 meseci
Podesi DrawMode tab kontrole na OwnerDrawFixed. Time se sprečava standardno iscrtavanje tabova, i ispaljuje se DrawItem event da bi korisnik sam iscrtao tab po potrebi. Ovaj kod pravi tabove u plavoj boji i tekst u standardnoj boji:

Code:
private void tabControl_DrawItem(object sender, System.Windows.Forms.DrawItemEventArgs e)
{
    Graphics g = e.Graphics;
    Rectangle tabRect = tabControl.GetTabRect(e.Index);
    SolidBrush backBrush = new SolidBrush(Color.Blue);
    g.FillRectangle(backBrush, tabRect);

    SolidBrush foreBrush = new SolidBrush(e.ForeColor);
    Rectangle textRect = new Rectangle(e.Bounds.X, e.Bounds.Y + 3, e.Bounds.Width, e.Bounds.Height - 3);
    StringFormat stringFormat = new StringFormat();
    stringFormat.Alignment = StringAlignment.Center;
    g.DrawString(tabControl.TabPages[e.Index].Text, e.Font, foreBrush, textRect, stringFormat);
}
 
Odgovor na temu

dr.AgOlO
Milan D.
MunZe

Član broj: 16417
Poruke: 95
*.beotel.net.



Profil

icon Re: TabControl boja ??07.01.2005. u 10:40 - pre 234 meseci
Hvala puno.

Poz.
 
Odgovor na temu

dr.AgOlO
Milan D.
MunZe

Član broj: 16417
Poruke: 95
217.26.66.*



Profil

icon Re: TabControl boja ??11.01.2005. u 09:41 - pre 234 meseci
Opet ja,
odradio sam iscrtavanje tabova kao sto si prethodno napisao i ok je, ali jos uvek u pozadini tj. iza tabova postoji siva (valjda po defaultu) boja koju ne mogu nikako da promenim. Malo sam ceprkao po kodu i zakljucio sam da ona postoji i kada se ne pozove metod DrawItem, ali nigde ne nadjoh svojstvo pomocu kojeg bi tu boju promenio.
Ajde ako neko kako da to uradim zna neka pomogne.

Poz.
 
Odgovor na temu

ZokiR
Zoran Radojković
Melburn, Australija

Član broj: 15986
Poruke: 109
*.gpm.net.au.



Profil

icon Re: TabControl boja ??13.01.2005. u 23:27 - pre 234 meseci
Moraš sam da prefarbaš pozadinu, npr. dodaj ovako nešto u DrawItem metodu:

Code:

SolidBrush parentBackBrush = new SolidBrush(tabControl.Parent.BackColor);

if (e.Index == tabControl.TabCount - 1)
{
    Rectangle tabControlRect = new Rectangle(e.Bounds.X + e.Bounds.Width, e.Bounds.Y - 2, tabControl.ClientRectangle.Width - e.Bounds.X - e.Bounds.Width, e.Bounds.Height + 4);
    g.FillRectangle(parentBackBrush, tabControlRect);
}

 
Odgovor na temu

[es] :: .NET :: TabControl boja ??

[ Pregleda: 3661 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.