COMO DISABLE UMA TAB ESPECIFICA?

BISEWSKI 05/04/2010 15:48:11
#338598
Olá a todos.

Fiz uma busca e não encontrei material para o VB 2008 sobre como disable uma aba específica.

Onde temos por exemplo três abas, quero que as duas abas da direita fiquem desabilitadas para serem selecionadas e somente a primeira da esquerda fique enabled. Mas o engraçado que nã econtrei essa opção...Tem como selecionar a aba desejada mas não enabled.

Dá para disable todas as abas de uma única vez, mas como fazer isso em abas específicas?
BISEWSKI 05/04/2010 16:57:56
#338612
Esse código faz isso:

SeuTabControl.TabPages([Ô]SuaTabPage[Ô]).Enabled = False

Só que ele desabilita tudo que está dentro da aba, e não a aba, ou seja, ainda é possível abrir a aba e ver o que tem dentro, só não se pode fazer nada pq está tudo desabilitado.
BISEWSKI 05/04/2010 17:58:38
#338623
Impressionante o visual basic não trazer uma opção para desabilitar abas...

Sera que por ser uma versão gratuita ele vem com recursos a menos?

Tem um TabControlEX.dll que oferece essa opção mas não sei como instalar...
BISEWSKI 05/04/2010 18:37:33
#338625
O SSTAB tem para VB 2008? Como faço para acha-lo?
VGSOFT 20/04/2010 18:20:44
#339818
Algumas dicas de tabcontrol
Private Sub TabControl1_Selecting(ByVal sender As Object, ByVal e As System.Windows.Forms.TabControlCancelEventArgs) Handles TabControl1.Selecting, TabControl2.Selecting
If editando Then
e.Cancel = True
End If
End Sub

[ô] se editando = true ele nao permite a selecao de outro tab
___________________________________________________________________________________________________

Tente colocar a aba do tab na lateral , impossivel !!!! aqui esta a solucao

Private Sub TabControl1_DrawItem(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DrawItemEventArgs) Handles TabControl1.DrawItem
Dim tc As TabControl = DirectCast(sender, TabControl)
Dim caption As String = tc.TabPages(e.Index).Text
Dim sf As New StringFormat
sf.Alignment = StringAlignment.Center
sf.LineAlignment = StringAlignment.Center
Dim b As Brush = New SolidBrush(Color.Blue)
Dim rect As Rectangle = tc.GetTabRect(e.Index)
[ô] Se alinhado à esquerda ou direita,
[ô] rotaciona o texto de acordo com o alinhamento.
If tc.Alignment = TabAlignment.Left Or _
tc.Alignment = TabAlignment.Right Then
Dim angulo As Integer = _
CInt(IIf(tc.Alignment = TabAlignment.Left, 270, 90))
Dim pt As New PointF(rect.Left + (rect.Width \ 2), _
rect.Top + (rect.Height \ 2))
e.Graphics.TranslateTransform(pt.X, pt.Y)
e.Graphics.RotateTransform(angulo)
rect = New Rectangle(-(rect.Height \ 2), _
-(rect.Width \ 2), rect.Height, rect.Width)
End If
e.Graphics.DrawString(caption, e.Font, b, rect, sf)
sf.Dispose()
b.Dispose()
End Sub
_____________________________________________________________________________
esconder um tab de um determinado usuario

Dim pos As Integer = TabControl1.TabPages.IndexOf(TabPage3)
TabPage2.Tag = pos
TabControl1.TabPages.Remove(TabPage3)

espero que possa ser util , pois quando eu precisei , perdi um tempao para achar
Tópico encerrado , respostas não são mais permitidas