Español
Foro

Tabcontrol deaktivieren oder unsichtbar hacer

 
- Página 1 -



CB
Hi,

ha uno de Euch Routiniers una Concepto, Yo una con



InsertTab(TabControl&,1,Tab1$)


eingefügtes Tab unsichtbar hacer oder deaktivieren a puede, así el Anwender sólo entonces en el más Registerkarten (total sinds en me 6) zugreifen kann, si la erste vollständig ausgefüllt es?

Derzeit Yo me así geholfen, daß todos más Registerkarten sólo a diesem Zeitpunkt erstellt voluntad, qué aber en una langsamen PC para unos pocos Sekunden a unschönen Effekten führt. Como voluntad así a el 100 Texto- y Editfelder erstellt y el blitzen entonces el Reihe después de kurz en...

Saludo,
Christian
 
XProfan 8/9.1, Win XP, AMD 64/3200
31.01.2005  
 



 
- Página 1 -



CB
Hi,
habe veces M$ begrapscht:



TCS_BOTTOM
Versión 4.70. Tabs appear at the bottom of the control. This value equals TCS_RIGHT. This style is not supported if you use ComCtl32.dll version 6.

TCS_BUTTONS
Tabs appear as buttons, and no border is drawn around the display area.

TCS_FIXEDWIDTH
All tabs are the same width. This style cannot be combined with the TCS_RIGHTJUSTIFY style.

TCS_FLATBUTTONS
Versión 4.71. Selected tabs appear as being indented into the background mientras que other tabs appear as being on the same plane as the background. This style only affects tab controls with the TCS_BUTTONS style.

TCS_FOCUSNEVER
The tab control does not receive the input focus when clicked.

TCS_FOCUSONBUTTONDOWN
The tab control receives the input focus when clicked.

TCS_FORCEICONLEFT
Icons are aligned with the left edge of each fixed-width tab. This style can only be used with the TCS_FIXEDWIDTH style.

TCS_FORCELABELLEFT
Labels are aligned with the left edge of each fixed-width tab; that is, the label is displayed immediately to the right of the icon instead of being centered. This style can only be used with the TCS_FIXEDWIDTH style, and it implies the TCS_FORCEICONLEFT style.

TCS_HOTTRACK
Versión 4.70. Items under the pointer are automatically highlighted. You can check whether or not hot tracking is enabled by calling SystemParametersInfo.

TCS_MULTILINE
Multiple rows of tabs are displayed, if necessary, así all tabs are visible at once.

TCS_MULTISELECT
Versión 4.70. Multiple tabs can be selected by holding down when clicking. This style must be used with the TCS_BUTTONS style.

TCS_OWNERDRAWFIXED
The parent window is responsible for drawing tabs.

TCS_RAGGEDRIGHT
Rows of tabs voluntad not be stretched to fill the entire width of the control. This style is the default.

TCS_RIGHT
Versión 4.70. Tabs appear vertically on the right side of controls that use the TCS_VERTICAL style. This value equals TCS_BOTTOM. This style is not supported if you use visual styles.

TCS_RIGHTJUSTIFY
The width of each tab is increased, if necessary, así that each row of tabs fills the entire width of the tab control. This window style is ignored unless the TCS_MULTILINE style is also specified.

TCS_SCROLLOPPOSITE
Versión 4.70. Unneeded tabs scroll to the opposite side of the control when a tab is selected.

TCS_SINGLELINE
Only one row of tabs is displayed. The user can scroll to see more tabs, if necessary. This style is the default.

TCS_TABS
Tabs appear as tabs, and a border is drawn around the display area. This style is the default.

TCS_TOOLTIPS
The tab control has a ToolTip control associated with it.

TCS_VERTICAL
Versión 4.70. Tabs appear at the left side of the control, with tab texto displayed vertically. This style is valid only when used with the TCS_MULTILINE style. To make tabs appear on the right side of the control, also use the TCS_RIGHT style. This style is not supported if you use ComCtl32.dll version 6.

Remarks

The following styles can be modified after the control is created:

TCS_BOTTOM
TCS_BUTTONS
TCS_FIXEDWIDTH
TCS_FLATBUTTONS
TCS_FORCEICONLEFT
TCS_FORCELABELLEFT
TCS_MULTILINE
TCS_OWNERDRAWFIXED
TCS_RAGGEDRIGHT
TCS_RIGHT
TCS_VERTICAL


Mi erste Concepto war natürlich, sólo veces
TCS_FOCUSNEVER
(The tab control does not receive the input focus when clicked.)
einzusetzen
y danach
TCS_FOCUSONBUTTONDOWN
(The tab control receives the input focus when clicked.)

Das entspräche sí genau el Enable-Función.
Bloß es el no vorgesehen, después de el Erstellung geändert a voluntad - como Usted ya geschrieben hast...

Aber tal vez gehts con:
TCS_FIXEDWIDTH

Das 1. Tab es con normaler Breite erstellt, el otro sólo veces con Breite 0 oder 1 y später el Breite geändert.
Geht el - y si sí, como?

Saludo,
Christian
 
XProfan 8/9.1, Win XP, AMD 64/3200
31.01.2005  
 




CB
So,
habe como una Code-Schnipsel, el Yo veces wo en el Foro gefunden habe, algo después de media Bedürfnissen modifiziert. Das käme meiner Vorstellung ya bastante nahe, bloß kriege Yo el Scroll-Pfeile no weg, un usuario hätte also siempre todavía Zugriff en el otro Tabs!
KompilierenMarcaSeparación
DEF SetWindowLong(3) ! User32,SetWindowLongA
DEF GetWindowLong(2) ! User32,GetWindowLongA
DEF &WM_CLOSE $010
DEF &WM_COMMAND $0111
DEF &TCM_SETITEMSIZE $01329
DEF &TCS_FIXEDWIDTH  1024
DEF &TCS_MULTILINE $0200
DEF &TCM_GETITEMCOUNT $01304
DEF &GWL_STYLE  -16
DEF MakeLong(2) Or(&(1),&(2)<<16)
Declare Ende&,TabControl&,TabItems&,Tabs&
WindowStyle 538
Cls
TabControl& = Create(TABCTRL,%hwnd,TAB 1,10,10,400,300)
Tabs& = Create(Button,%HWND,Show all tabs,50,350,100,20)
InsertTab(TabControl&,1,TAB 2)
InsertTab(TabControl&,2,TAB 3)
InsertTab(TabControl&,3,TAB 4)
InsertTab(TabControl&,4,TAB 5)
InsertTab(TabControl&,5,TAB 6)
WindowStyle erweitern um feste Breite (alle Tabreiter sind gleich breit)
SetWindowLong(TabControl&,&GWL_STYLE,OR(GetWindowLong(TabControl&,&GWL_STYLE),OR(&TCS_FIXEDWIDTH,&TCS_MULTILINE)))
SetWindowLong(TabControl&,&GWL_STYLE,OR(GetWindowLong(TabControl&,&GWL_STYLE),&TCS_FIXEDWIDTH))
TabItems& = 1
SendMessage(TabControl&,&TCM_SETITEMSIZE,0,MakeLong(Width(TabControl&),20))

PROC TABS_erweitern

    Anzahl der Tabreiter ermitteln
    TabItems& = SendMessage(TabControl&,&TCM_GETITEMCOUNT,0,0)
    Breite und Hoehe setzen
    Par1 bei MakeLong ist die Breite
    Par2 bei Makelong ist die Höhe
    SendMessage(TabControl&,&TCM_SETITEMSIZE,0,MakeLong(Width(TabControl&)/TabItems&,20))

ENDPROC

UserMessages &WM_COMMAND,&WM_CLOSE

Whilenot Ende&

    Waitinput

    If %UMessage = &WM_CLOSE

        End

    ElseIf %UMessage = &WM_COMMAND

        If &ULParam = Tabs&

            TABS_erweitern

        EndIf

    EndIf

EndWhile

ef='./../../funktionsreferenzen/XProfan/end/'>End

Tal vez ginge lo, si la Stil primär en Buttons gesetzt y später en Flatbuttons geändert sería?

Christian
 
XProfan 8/9.1, Win XP, AMD 64/3200
31.01.2005  
 



So correcto wirklich helfen kann Yo Usted esta no. Aber tal vez Es el Herangehensweise auch no el richtige.

Ein ganzes TAB no sperren a puede empfinde Yo auch como Blödsinn - aber tal vez es para el User auch einfacher si él anhand de ge-disableten-Eingabefeldern erkennt el algo unstimmig es.

Tomar doch el Hilo.Pcu a Eingabefelder - je después de Schlüssigkeit - una oder de-a-schalten.

So se auch en otro größeren Programmen verfahren.

Salve, IF
 
31.01.2005  
 




CB
Hi,
Yo glaube, Yo doch una solución gefunden, es igual fertig.

Derzeit Yo el Tabcontrol una ähnlichen Schema como seinerzeit en Richard Maurukas erstellt, sólo una wenig modernisiert.

Bezügl. Hilo.pcu: Würde Yo inmediatamente uso!! Yo sehe el Potential en él, aber:
Como setzt Usted en me Wissen voraus, el Yo desafortunadamente (todavía) no habe.
Überhaupt weiß Yo con Unidades todavía no viel anzufangen (como ya veces erwähnt: Yo nix verstehen, Yo más Baustelle! )

Bin aber Gott sei Dank todavía no a alt, en todavía lernfähig a ser! Immerhin Yo me fast alles a Programmiertätigkeit autoditaktisch erarbeitet, oft genug después de try and error - the more tries, the more errors y vieles después de demselben Principio, con el el japanische Autoindustrie antes etlichen Jahren en el Höhe geschossen es: Man klaut se de überall her el beste - y macht con un pocos Modifikationen qué Neues lo y manchmal waren (son) el Kopien mejor como el Original.....

Aber wir kochen todos sólo Wasser y cada ha veces klein angefangen!
So, genug el Platitüden - Yo schau mal, si mein Muster ahora wirklich mejor geworden es como el Original..

Christian
 
XProfan 8/9.1, Win XP, AMD 64/3200
31.01.2005  
 




CB
Hi,
So, salvo ne Kleinigkeit gehts. Como muß todavía irgendwo una kleiner Gedankenfehler drinsein. Posesiones sólo momentan no Tiempo dazu.
KompilierenMarcaSeparación
DEF SetWindowLong(3) ! User32,SetWindowLongA
DEF GetWindowLong(2) ! User32,GetWindowLongA
DEF &WM_CLOSE $010
DEF &WM_COMMAND $0111
DEF &TCM_SETITEMSIZE $01329
DEF &TCS_FIXEDWIDTH  1024
DEF &TCM_GETITEMCOUNT $01304
DEF &GWL_STYLE  -16
DEF MakeLong(2) Or(&(1),&(2)<<16)
Declare Ende&,TabControl&,TabItems&,Tabs&,AktivesTab&
Declare EditTab1&,EditTab2&,EditTab3&,EditTab4&,EditTab5&,EditTab6&

PROC TAB1AKTIV

    ShowWindow(Tabs&,1)
    ShowWindow(EditTab1&,1)

ENDPROC

PROC TAB2AKTIV

    ShowWindow(EditTab2&,1)

ENDPROC

PROC TAB3AKTIV

    ShowWindow(EditTab3&,1)

ENDPROC

PROC TAB4AKTIV

    ShowWindow(EditTab4&,1)

ENDPROC

PROC TAB5AKTIV

    ShowWindow(EditTab5&,1)

ENDPROC

PROC TAB6AKTIV

    ShowWindow(EditTab6&,1)

ENDPROC

PROC TAB1INAKTIV

    ShowWindow(Tabs&,0)
    ShowWindow(EditTab1&,0)

ENDPROC

PROC TAB2INAKTIV

    ShowWindow(EditTab2&,0)

ENDPROC

PROC TAB3INAKTIV

    ShowWindow(EditTab3&,0)

ENDPROC

PROC TAB4INAKTIV

    ShowWindow(EditTab4&,0)

ENDPROC

PROC TAB5INAKTIV

    ShowWindow(EditTab5&,0)

ENDPROC

PROC TAB6INAKTIV

    ShowWindow(EditTab6&,0)

ENDPROC

WindowStyle 538
Cls
TabControl& = Create(TABCTRL,%hwnd,TAB 1,0,0,width(%HWND),height(%HWND))
InsertTab(TabControl&,1,TAB 2)
InsertTab(TabControl&,2,TAB 3)
InsertTab(TabControl&,3,TAB 4)
InsertTab(TabControl&,4,TAB 5)
InsertTab(TabControl&,5,TAB 6)
aus CommCtrl.ph:
{ ====== ~TAB CONTROL ======================== }
WC_TABCONTROL = SysTabControl32;
TCS_SCROLLOPPOSITE    = $0001// assumes multiline tab
TCS_BOTTOM            = $0002
TCS_RIGHT             = $0002
TCS_MULTISELECT       = $0004// allow multi-select in button mode
TCS_FLATBUTTONS       = $0008
TCS_FORCEICONLEFT     = $0010
TCS_FORCELABELLEFT    = $0020
TCS_HOTTRACK          = $0040   Farbige Beschriftung unter Maus-Cursor
TCS_VERTICAL          = $0080
TCS_TABS              = $0000
TCS_BUTTONS           = $0100
TCS_SINGLELINE        = $0000
TCS_MULTILINE         = $0200
TCS_RIGHTJUSTIFY      = $0000
TCS_FIXEDWIDTH        = $0400
TCS_RAGGEDRIGHT       = $0800
TCS_FOCUSONBUTTONDOWN = $1000
TCS_OWNERDRAWFIXED    = $2000
TCS_TOOLTIPS          = $4000
TCS_FOCUSNEVER        = $8000  Da STEHEN tuts, bloß gehen tuts NICHT!
WindowStyle erweitern um feste Breite (alle Tabreiter sind gleich breit)
SetWindowLong(TabControl&,&GWL_STYLE,OR(GetWindowLong(TabControl&,&GWL_STYLE),$0440))
TabItems& = 1
SendMessage(TabControl&,&TCM_SETITEMSIZE,0,MakeLong(Width(TabControl&),20))
EditTab1& = Create(Edit,%HWND,Das ist Tab 1,50,50,150,19)
Tabs& = Create(Button,%HWND,Show all tabs,50,350,100,20)
EditTab2& = Create(Edit,%HWND,Das ist jetzt Tab 2,50,100,150,19)
EditTab3& = Create(Edit,%HWND,Das ist jetzt Tab 3,50,150,150,19)
EditTab4& = Create(Edit,%HWND,Das ist jetzt Tab 4,50,200,150,19)
EditTab5& = Create(Edit,%HWND,Das ist jetzt Tab 5,50,250,150,19)
EditTab6& = Create(Edit,%HWND,Das ist jetzt Tab 6,50,300,150,19)
TAB1AKTIV
TAB2INAKTIV
TAB3INAKTIV
TAB4INAKTIV
TAB5INAKTIV
TAB6INAKTIV
EnableWindow Tabcontrol&,0

PROC TABS_erweitern

    EnableWindow Tabcontrol&,1
    SetWindowLong(TabControl&,&GWL_STYLE,OR(GetWindowLong(TabControl&,&GWL_STYLE),OR(&TCS_FIXEDWIDTH,$0440)))
    Anzahl der Tabreiter ermitteln
    TabItems& = SendMessage(TabControl&,&TCM_GETITEMCOUNT,0,0)
    Breite und Hoehe setzen
    Par1 bei MakeLong ist die Breite
    Par2 bei Makelong ist die Höhe
    SendMessage(TabControl&,&TCM_SETITEMSIZE,0,MakeLong(Width(TabControl&)/TabItems&,20))

ENDPROC

UserMessages &WM_COMMAND,&WM_CLOSE

Whilenot Ende&

    Waitinput
    AktivesTab& = GetActiveTab(Tabcontrol&)   Ermittelt das selektierte Tab

    If tabchanged(TabControl&)                Tab gewechselt?

        If AktivesTab& = 0

            TAB1AKTIV
            ShowWindow(Tabs&,0)
            TAB2INAKTIV
            TAB3INAKTIV
            TAB4INAKTIV
            TAB5INAKTIV
            TAB6INAKTIV

        ElseIf AktivesTab& = 1

            TAB1INAKTIV
            TAB2AKTIV
            TAB3INAKTIV
            TAB4INAKTIV
            TAB5INAKTIV
            TAB6INAKTIV

        ElseIf AktivesTab& = 2

            TAB1INAKTIV
            TAB2INAKTIV
            TAB3AKTIV
            TAB4INAKTIV
            TAB5INAKTIV
            TAB6INAKTIV

        ElseIf AktivesTab& = 3

            TAB1INAKTIV
            TAB2INAKTIV
            TAB3INAKTIV
            TAB4AKTIV
            TAB5INAKTIV
            TAB6INAKTIV

        ElseIf AktivesTab& = 4

            TAB1INAKTIV
            TAB2INAKTIV
            TAB3INAKTIV
            TAB4INAKTIV
            TAB5AKTIV
            TAB6INAKTIV

        ElseIf AktivesTab& = 5

            TAB1INAKTIV
            TAB2INAKTIV
            TAB3INAKTIV
            TAB4INAKTIV
            TAB5INAKTIV
            TAB6AKTIV

        EndIf

    EndIf

    If %UMessage = &WM_CLOSE

        End

    ElseIf %UMessage = &WM_COMMAND

        If &ULParam = Tabs&

            AktivesTab& = 0
            TABS_erweitern
            TAB1AKTIV
            ShowWindow(Tabs&,0)
            TAB2INAKTIV
            TAB3INAKTIV
            TAB4INAKTIV
            TAB5INAKTIV
            TAB6INAKTIV

        EndIf

EndWhile

End

Christian
 
XProfan 8/9.1, Win XP, AMD 64/3200
31.01.2005  
 




CB
Sodale,
habe soeben ausgetrickst. So gehts wirklich:
KompilierenMarcaSeparación
DEF SetWindowLong(3) ! User32,SetWindowLongA
DEF GetWindowLong(2) ! User32,GetWindowLongA
DEF &WM_CLOSE $010
DEF &WM_COMMAND $0111
DEF &TCM_SETITEMSIZE $01329
DEF &TCS_FIXEDWIDTH  1024
DEF &TCM_GETITEMCOUNT $01304
DEF &GWL_STYLE  -16
DEF MakeLong(2) Or(&(1),&(2)<<16)
UserMessages &WM_COMMAND,&WM_CLOSE
Declare Ende&,TabControl&,TabItems&,Tabs&,AktivesTab&,Ende&,Tab2&
Declare EditTab1&,EditTab2&,EditTab3&,EditTab4&,EditTab5&,EditTab6&

PROC TAB1AKTIV

    ShowWindow(Tabs&,1)
    ShowWindow(EditTab1&,1)

ENDPROC

PROC TAB2AKTIV

    ShowWindow(EditTab2&,1)

ENDPROC

PROC TAB3AKTIV

    ShowWindow(EditTab3&,1)

ENDPROC

PROC TAB4AKTIV

    ShowWindow(EditTab4&,1)

ENDPROC

PROC TAB5AKTIV

    ShowWindow(EditTab5&,1)

ENDPROC

PROC TAB6AKTIV

    ShowWindow(EditTab6&,1)

ENDPROC

PROC TAB1INAKTIV

    ShowWindow(Tabs&,0)
    ShowWindow(EditTab1&,0)

ENDPROC

PROC TAB2INAKTIV

    ShowWindow(EditTab2&,0)

ENDPROC

PROC TAB3INAKTIV

    ShowWindow(EditTab3&,0)

ENDPROC

PROC TAB4INAKTIV

    ShowWindow(EditTab4&,0)

ENDPROC

PROC TAB5INAKTIV

    ShowWindow(EditTab5&,0)

ENDPROC

PROC TAB6INAKTIV

    ShowWindow(EditTab6&,0)

ENDPROC

WindowStyle 538
Cls
TabControl& = Create(TABCTRL,%hwnd,TAB 1,0,0,width(%HWND),height(%HWND))
Tab2& = InsertTab(TabControl&,1,TAB 2)
InsertTab(TabControl&,2,TAB 3)
InsertTab(TabControl&,3,TAB 4)
InsertTab(TabControl&,4,TAB 5)
InsertTab(TabControl&,5,TAB 6)
aus CommCtrl.ph:
{ ====== ~TAB CONTROL ======================== }
WC_TABCONTROL = SysTabControl32;
TCS_SCROLLOPPOSITE    = $0001// assumes multiline tab
TCS_BOTTOM            = $0002
TCS_RIGHT             = $0002
TCS_MULTISELECT       = $0004// allow multi-select in button mode
TCS_FLATBUTTONS       = $0008
TCS_FORCEICONLEFT     = $0010
TCS_FORCELABELLEFT    = $0020
TCS_HOTTRACK          = $0040   Farbige Beschriftung unter Maus-Cursor
TCS_VERTICAL          = $0080
TCS_TABS              = $0000
TCS_BUTTONS           = $0100
TCS_SINGLELINE        = $0000
TCS_MULTILINE         = $0200
TCS_RIGHTJUSTIFY      = $0000
TCS_FIXEDWIDTH        = $0400
TCS_RAGGEDRIGHT       = $0800
TCS_FOCUSONBUTTONDOWN = $1000
TCS_OWNERDRAWFIXED    = $2000
TCS_TOOLTIPS          = $4000
TCS_FOCUSNEVER        = $8000   Da STEHEN täts ja, bloß gehen tuts NICHT! VOn M$ nicht vorgesehen!  |-(
SetWindowLong(TabControl&,&GWL_STYLE,OR(GetWindowLong(TabControl&,&GWL_STYLE),$0440))
TabItems& = 1
SendMessage(TabControl&,&TCM_SETITEMSIZE,0,MakeLong(Width(TabControl&),20))
EditTab1& = Create(Edit,%HWND,Das ist Tab 1,50,50,150,19)
Tabs& = Create(Button,%HWND,Show all tabs,50,350,100,20)
EditTab2& = Create(Edit,%HWND,Das ist jetzt Tab 2,50,100,150,19)
EditTab3& = Create(Edit,%HWND,Das ist jetzt Tab 3,50,150,150,19)
EditTab4& = Create(Edit,%HWND,Das ist jetzt Tab 4,50,200,150,19)
EditTab5& = Create(Edit,%HWND,Das ist jetzt Tab 5,50,250,150,19)
EditTab6& = Create(Edit,%HWND,Das ist jetzt Tab 6,50,300,150,19)
TAB1AKTIV
TAB2INAKTIV
TAB3INAKTIV
TAB4INAKTIV
TAB5INAKTIV
TAB6INAKTIV
AktivesTab& = GetActiveTab(Tabcontrol&)
AktivesTab& = 0
EnableWindow Tabcontrol&,0

PROC TABS_erweitern

    EnableWindow Tabcontrol&,1
    WindowStyle erweitern um feste Breite (alle Tabreiter sind gleich breit)
    SetWindowLong(TabControl&,&GWL_STYLE,OR(GetWindowLong(TabControl&,&GWL_STYLE),OR(&TCS_FIXEDWIDTH,$0440)))
    Anzahl der Tabreiter ermitteln
    TabItems& = SendMessage(TabControl&,&TCM_GETITEMCOUNT,0,0)
    Breite und Hoehe setzen
    Par1 bei MakeLong ist die Breite
    Par2 bei Makelong ist die Höhe
    SendMessage(TabControl&,&TCM_SETITEMSIZE,0,MakeLong(Width(TabControl&)/TabItems&,20))
    AktivesTab& = 0

ENDPROC

Whilenot Ende&

    Waitinput
    AktivesTab& = GetActiveTab(Tabcontrol&)   Ermittelt das selektierte Tab

    If %UMessage = &WM_CLOSE

        Ende& = 1

    ElseIf %UMessage = &WM_COMMAND

        If &ULParam = Tabs&

            TABS_erweitern
            TAB1INAKTIV
            TAB2AKTIV
            TAB3INAKTIV
            TAB4INAKTIV
            TAB5INAKTIV
            TAB6INAKTIV
            TAB1AKTIV                           das kapier ich zwar nicht so ganz, aber es geht nur so,
            TAB2INAKTIV                         sonst wird der Inhalt von Tab1 nicht angezeigt!
            ShowWindow(Tabs&,0)

        EndIf

    EndIf

    If tabchanged(TabControl&)                Tab gewechselt?

        If AktivesTab& = 0

            TAB1AKTIV
            ShowWindow(Tabs&,0)
            TAB2INAKTIV
            TAB3INAKTIV
            TAB4INAKTIV
            TAB5INAKTIV
            TAB6INAKTIV

        ElseIf AktivesTab& = 1

            TAB1INAKTIV
            TAB2AKTIV
            TAB3INAKTIV
            TAB4INAKTIV
            TAB5INAKTIV
            TAB6INAKTIV

        ElseIf AktivesTab& = 2

            TAB1INAKTIV
            TAB2INAKTIV
            TAB3AKTIV
            TAB4INAKTIV
            TAB5INAKTIV
            TAB6INAKTIV

        ElseIf AktivesTab& = 3

            TAB1INAKTIV
            TAB2INAKTIV
            TAB3INAKTIV
            TAB4AKTIV
            TAB5INAKTIV
            TAB6INAKTIV

        ElseIf AktivesTab& = 4

            TAB1INAKTIV
            TAB2INAKTIV
            TAB3INAKTIV
            TAB4INAKTIV
            TAB5AKTIV
            TAB6INAKTIV

        ElseIf AktivesTab& = 5

            TAB1INAKTIV
            TAB2INAKTIV
            TAB3INAKTIV
            TAB4INAKTIV
            TAB5INAKTIV
            TAB6AKTIV

        EndIf

    EndIf

EndWhile

End

Saludo,
Christian
 
XProfan 8/9.1, Win XP, AMD 64/3200
31.01.2005  
 




Frank
Abbing
Hi,

sieht komisch de, y ungewohnt.
¿Por qué benutzt du no SendMessage(tabcontrol&,$1309,0,0)?
 
31.01.2005  
 




CB
Hi, Franco!

Stimmt, qué el Aussehen angeht - dar Usted bastante.
Was Punkt 2 angeht - si yo el gewußt hätte, hätte Yo mich sicher no a el Comunidad gewandt con el Bitte en Ayuda. Yo habe aber intenta, una propio Solución para encontrar y después de IF me mitgeteilt ha, daß el de M$ nada vorgesehen es y me auch no weiterhelfen podría, war Yo irgendwie froh, una optisch no ideale, aber wenigstens praktikable Método gefunden a haben.

Posesiones Su Tip natürlich igual veces ausprobiert, bloß bekomme Yo entweder una Division por 0 oder una komplett leeres Feld sin Beschriftung oder zuerst una leeres Feld y anschließend sólo mehr el Tabs 2-6 adecuado. Tätst Usted me Por favor, anhand de mi Schema zeigen, como Usted el gemeint hast? Lo debería nämlich auch después de el Ansichtswechsel todos Tabs otra vez verfügbar ser.

Saludo,
Christian
 
XProfan 8/9.1, Win XP, AMD 64/3200
31.01.2005  
 




Frank
Abbing
Hi,

así, z.B.:
KompilierenMarcaSeparación
 $P+
SetErrorLevel 0
********************** HINWEISE ********************************
CODE ERZEUGT MIT ROKOS OBJECT CREATOR 4.1
DATUM  01.02.2005    um  06:43 Uhr
VERWENDETE PROFANVERSION IST 7.9-NT XPROFAN
!!! Dieser Code wird von Roc immer neu erzeugt        !!!
!!! Erst bearbeiten, wenn alle Objekte erzeugt wurden !!!
!!! Verändern Sie ggf. feste Pfade in variable Pfade  !!!
DEF GETSYSCOLOR(1) !USER32,GetSysColor
DECLARE BUTTON1&,BUTTON2&,x&
DECLARE TABCTRL1&
WINDOWSTYLE 63
WINDOWTITLE Neues Fenster
WINDOW 99,149-640,500
SETTRUECOLOR 1
DECLARE ENDE%
CLS GETSYSCOLOR(15)
USEFONT MS Sans Serif,13,0,0,0,0
SETDIALOGFONT 1
Hier kann ggf. Ihr Menü hin
BUTTON1& = CREATE(BUTTON,%HWND,Mit Reitern,0424,0086,0090,0030)
BUTTON2& = CREATE(BUTTON,%HWND,Ohne Reiter,0424,0126,0090,0030)
TABCTRL1& = CREATE(TABCTRL,%HWND,Reiter1,0046,0059,0170,0130)
@InsertTab(TABCTRL1&,1,Reiter2)
@InsertTab(TABCTRL1&,2,Reiter3)
SETFOCUS(%HWND)
x&=1

WHILENOT ENDE%

    WAITINPUT

    If @EQU(%KEY,2)

        LET ENDE%= 1

    ELSEIF @EQU(%KEY,4)

    ELSEIF GETFOCUS(BUTTON1&) BUTTON

        If x&=0

            @InsertTab(TABCTRL1&,0,Reiter1)
            @InsertTab(TABCTRL1&,1,Reiter2)
            @InsertTab(TABCTRL1&,2,Reiter3)
            x&=x&+1

        EndIf

    ELSEIF GETFOCUS(BUTTON2&) BUTTON

        SendMessage(TABCTRL1&,$1309,0,0)
        x&=0

    ELSEIF TABCHANGED(TABCTRL1&) TABCTRL

    ENDIF

='./../../funktionsreferenzen/XProfan/wend/'>WEND

 
01.02.2005  
 




Uwe
''Pascal''
Niemeier
¡Hola Personas!

Wenn Yo el problema correcto verstanden habe, podría dies helfen:
KompilierenMarcaSeparación
window 20,20-700,400
declare dlg&,Tab&,Tab&[5],Rb1&,Rb2&
dlg&=create(dialog,%hwnd,Einstellungen,%winleft+50,%wintop+100,520,250)
Tab&=Control(SysTabControl32,,$54010000,20,10,width(dlg&)-40,height(dlg&)-40,dlg&,10,0)

whileloop 0,5

    inserttab(Tab&,&loop,Reiter +str$(&loop))
    Tab&[&loop]=control(Dialog,1,$40081003,2,25,width(Tab&)-4,height(Tab&)-30,Tab&,1,0)
    create(text,Tab&[&loop],Dies ist Karte +str$(&loop),50,20,300,50)

endwhile

showwindow(Tab&[0],1)
Rb1&=create(radiobutton,Tab&[0],Alle Reiter zugänglich,50,50,300,50)
Rb2&=create(radiobutton,Tab&[0],Nur Reiter 0-2 zugänglich,50,85,300,50)
setcheck Rb1&,1
declare OldTab%,NewTab%

while 1

    waitinput

    if tabchanged(Tab&)---------------------Tabwechsel

        NewTab%=GetActiveTab(Tab&)

        if NewTab%<>OldTab%

            if getcheck(Rb2&) * (NewTab%>2)

                sendmessage(Tab&,4876,OldTab%,0)--4876 = TCM_SETCURSEL
                beep

            else

                showwindow(Tab&[OldTab%],0)
                showwindow(Tab&[NewTab%],1)
                OldTab%=NewTab%

            endif

        endif

    endif

endwhile


HTH
Pascal

Tötet Sweety!
 
01.02.2005  
 



 
- Página 2 -



CB
Hi,

Yo weiß ya, por qué Me gusta en diesem Foro unterwegs bin!
Vielen herzlichen Dank Euch beiden! Ihr habt me muy geholfen, beide Lösungen kann Yo bien uso.
Gracias nochmals!

Saludo,
Christian
 
XProfan 8/9.1, Win XP, AMD 64/3200
01.02.2005  
 




p.specht

Posesiones Franco Abbings Solución en XProfan-11.2a free umgestrickt y el fehlenden Anführungszeichen ergänzt.
' VERWENDETE PROGRAMMVERSION XPROFAN 11.2a free
' Adaptiert Nov.2021 by p.specht
' !!! Erst bearbeiten, si todos Objetos producido fueron !!!
' !!! Verändere ggf. feste Pfade en variable Pfade  !!!
DEF GETSYSCOLOR(1) !"USER32","GetSysColor"
DECLARE BUTTON1&,BUTTON2&,x&
DECLARE TABCTRL1&
WINDOWSTYLE 63
WINDOWTITLE "Neues Fenster"
WINDOW 99,149-640,500
SETTRUECOLOR 1
DECLARE ENDE%
CLS GETSYSCOLOR(15)
USEFONT "MS Sans Serif",13,0,0,0,0
SETDIALOGFONT 1
' Hier kann ggf. Ihr Menü hin
BUTTON1& = CREATE("BUTTON",%HWND,"Mit Reitern",0424,0086,0090,0030)
BUTTON2& = CREATE("BUTTON",%HWND,"Ohne Reiter",0424,0126,0090,0030)
TABCTRL1& = CREATE("TABCTRL",%HWND,"Reiter1",0046,0059,0170,0130)
@InsertTab(TABCTRL1&,1,"Reiter2")
@InsertTab(TABCTRL1&,2,"Reiter3")
SETFOCUS(%HWND)
x&=1

WHILENOT ENDE%

    WAITINPUT

    If %KEY=2

        LET ENDE%= 1

    ELSEIF %KEY=4

    ELSEIF GETFOCUS(BUTTON1&)'BUTTON

        If x&=0

            @InsertTab(TABCTRL1&,0,"Reiter1")
            @InsertTab(TABCTRL1&,1,"Reiter2")
            @InsertTab(TABCTRL1&,2,"Reiter3")
            x&=x&+1

        EndIf

    ELSEIF GETFOCUS(BUTTON2&)'BUTTON

        SendMessage(TABCTRL1&,$1309,0,0)
        x&=0

    ELSEIF TABCHANGED(TABCTRL1&)'TABCTRL

    ENDIF

ENDWHILE

 
XProfan 11
Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'...
23.11.2021  
 




Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

768.786 Views

Untitledvor 0 min.
Gast.081508.07.2024
Sven Bader13.03.2023
Normann Strübli03.02.2023
RudiB.30.09.2022
Más...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie