Cum să ascundeți filele tabcontrol

Cum ascund fișierele TabControl?

Cine vă va spune cum să ascundeți filele TabControl
Vă mulțumim anticipat

Dacă prin tab-uri ați avut în vedere butoanele pentru comutarea paginilor, atunci






Pentru a forța să ascundeți filele TabControl "independent" - nu se întâmplă, dar este posibil să recurgeți la un astfel de truc:
Traduceți tab-urile în jos (tcoBottom = TRUE) și tăiați regiunea de redare.
Aproximativ astfel:

var
# xA0; Rgn: HRGN
.
# xA0; # xA0; Rgn: = CreateRectRgn (0,4, TabControl1.Width-1, TabControl1.Height-22);
# xA0; # xA0; SetWindowRgn (TabControl1.GetWindowHandle, Rgn, TRUE);

Dacă filele sunt pagini - IMHO: trebuie să le ștergeți (paginile) și, dacă este necesar, să le inserați înapoi.

Este mai bine să folosiți TC_DisplayRect, returnează coordonatele dreptunghiului, care ar trebui să rămână după decupare.

Și puteți crea un eveniment OnPaint pentru tabContorl și nu trageți nimic în el:
procedura TForm1.TabControl1Paint (expeditor: PControl; DC: HDC);
începe
//
se încheie;
Dar [2] + [3], desigur, este mai corectă :)







Da, vreau doar să fac ceva asemănător unei legări TreeView + TabControl (ca o fereastră în LightAlloy sau TotalCommander), faceți clic pe tipul din TreeView și, în funcție de linia selectată, apare fila necesară. Am făcut totul, dar tab-urile nu sunt de loc deoarece TreeView este.

În cazul meu, în acest caz, nu contactați TabControl.
De ce nu grabiti pur si simplu panourile deasupra celuilalt si faceti BringToFront.
Am pus panoul principal, și pe panouri cu comenzi. Le aliniem = caClient.
Sa dovedit foarte simplu:

# xA0; TVItem: = TreeView1.TVInsert (0, 0, "Poz. 1");
# xA0; TreeView1.TVItemData [TVItem]: = Panoul1;

# xA0; TVItem: = TreeView1.TVInsert (0, TVItem, "Poz. 2");
# xA0; TreeView1.TVItemData [TVItem]: = Panoul2;

# xA0; TVItem: = TreeView1.TVInsert (0, TVItem, "Poz. 3");
# xA0; TreeView1.TVItemData [TVItem]: = Panel3;

procedura TForm1.TreeView1Change (expeditor: PObj);
începe
# xA0; TKOLPanel (TreeView1.TVItemData [TreeView1.TVSelected]) BringToFront;
capăt


> În cazul meu nu este necesar să contactați TabControl

IMHO: Dimpotrivă. Eu, personal, prefer să folosesc în acest caz
TabControl - cu un număr mare de panouri, este mult mai ușor să remediați ceva în timpul designului. În cazul tău - se dovedește că prea multe mișcări ale corpului trebuie efectuate pentru a ajunge la panoul dorit, pentru editare. (Mă întorc - acest lucru este IMHO și numai pentru MCK)

Memorie: 0,73 MB
Durată: 0.107 sec







Articole similare

Trimiteți-le prietenilor: