Français
Forum

Tabcontrol désactiver ou bien unsichtbar faire

 
- page 1 -



CB
Hi,

hat einer de Euch Routiniers une concept, comment je un avec



InsertTab(TabControl&,1,Tab1$)


eingefügtes Tab unsichtbar faire ou bien désactiver trop peut, avec cela qui Anwender seulement ensuite sur qui weiteren Registerkarten (en tout sinds chez mir 6) zugreifen peux, si le erste vollständig ausgefüllt ist?

Derzeit habe je mir so geholfen, qui alle weiteren Registerkarten seulement trop diesem la date erstellt volonté, quoi mais sur einem langsamen PC pour un paire Sekunden trop unschönen Effekten führt. là volonté so à qui 100 Text- et Editfelder erstellt et qui blitzen ensuite qui Reihe pour kurz sur...

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



 
- page 1 -



CB
Hi,
habe la fois M$ begrapscht:



TCS_BOTTOM
Version 4.70. Tabs appear at le bottom of le control. This value equals TCS_RIGHT. This style is not supported si you use ComCtl32.dll version 6.

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

TCS_FIXEDWIDTH
All tabs sont le same width. This style cannot être combined with le TCS_RIGHTJUSTIFY style.

TCS_FLATBUTTONS
Version 4.71. Selected tabs appear as being indented into le background tandis que other tabs appear as being on le same plane as le background. This style only affects tab controls with le TCS_BUTTONS style.

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

TCS_FOCUSONBUTTONDOWN
The tab control receives le input focus when clicked.

TCS_FORCEICONLEFT
Icônes sont aligned with le left edge of each fixed-width tab. This style can only être used with le TCS_FIXEDWIDTH style.

TCS_FORCELABELLEFT
Labels sont aligned with le left edge of each fixed-width tab; that is, le label is displayed immediately to le right of le icon instead of being centered. This style can only être used with le TCS_FIXEDWIDTH style, and il implies le TCS_FORCEICONLEFT style.

TCS_HOTTRACK
Version 4.70. Items under le pointer sont automatically highlighted. You can check whether or not hot tracking is enabled by calling SystemParametersInfo.

TCS_MULTILINE
Multiple rows of tabs sont displayed, si necessary, so espace tabs sont visible at once.

TCS_MULTISELECT
Version 4.70. Multiple tabs can être selected by holding down when clicking. This style must être used with le TCS_BUTTONS style.

TCS_OWNERDRAWFIXED
The parent window is responsible for drawing tabs.

TCS_RAGGEDRIGHT
Rows of tabs veux not être stretched to fill le entire width of le control. This style is le default.

TCS_RIGHT
Version 4.70. Tabs appear vertically on le right side of controls that use le TCS_VERTICAL style. This value equals TCS_BOTTOM. This style is not supported si you use visual styles.

TCS_RIGHTJUSTIFY
The width of each tab is increased, si necessary, so that each row of tabs fills le entire width of le tab control. This window style is ignored unless le TCS_MULTILINE style is alors specified.

TCS_SCROLLOPPOSITE
Version 4.70. Unneeded tabs scroll to le opposite side of le control when a tab is selected.

TCS_SINGLELINE
Only one row of tabs is displayed. The user can scroll to lac more tabs, si necessary. This style is le default.

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

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

TCS_VERTICAL
Version 4.70. Tabs appear at le left side of le control, with tab text displayed vertically. This style is valid only when used with le TCS_MULTILINE style. To faire tabs appear on le right side of le control, alors use le TCS_RIGHT style. This style is not supported si you use ComCtl32.dll version 6.

Remarks

The following styles can être modified after le 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


mon erste concept était naturellement, seulement la fois
TCS_FOCUSNEVER
(The tab control does not receive le input focus when clicked.)
einzusetzen
et après
TCS_FOCUSONBUTTONDOWN
(The tab control receives le input focus when clicked.)

cela entspräche oui oui c'est ca qui Enable-Funktion.
Bloß ist cela pas vorgesehen, pour qui Erstellung geändert trop volonté - comment Du déjà geschrieben la hâte...

mais peut-être gehts avec:
TCS_FIXEDWIDTH

cela 1. Tab wird avec normaler Breite erstellt, qui anderen seulement la fois avec Breite 0 ou bien 1 et später qui Breite geändert.
allez cela - et si oui, comment?

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




CB
Alors,
habe là un Code-Schnipsel, le moi la fois wohin im Forum trouvé habe, quelque chose pour meinen Bedürfnissen modifiziert. cela käme meiner Vorstellung déjà droite proche, bloß kriege je qui Scroll-Pfeile pas weg, un Anwender hätte alors toujours Zugriff sur qui anderen Tabs!
KompilierenMarqueSéparation
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/'>Fin

peut-être ginge es, si qui Stil primär sur Buttons gesetzt et später sur Flatbuttons geändert serait?

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



So richtig wirklich aider peux je Dir dabei pas. mais peut-être ist qui Herangehensweise aussi pas qui richtige.

un ganzes TAB pas sperren trop peut empfinde je aussi comme Blödsinn - mais peut-être ist es pour den User aussi einfacher si il anhand de ge-disableten-Eingabefeldern erkennt cela quelque chose unstimmig ist.

prends doch qui Fil.Pcu à Eingabefelder - je pour Schlüssigkeit - un ou bien ab-trop-schalten.

So wird aussi dans anderen größeren Programmen procéder.

Salve, iF
 
31.01.2005  
 




CB
Hi,
je crois, j'ai doch une Solution trouvé, ist juste fertig.

Derzeit habe je qui Tabcontrol pour einem ähnlichen Schema comment seinerzeit chez Richard Maurukas erstellt, arrêt un peu modernisiert.

Bezügl. Fil.pcu: Würde je tout de suite verwenden!! je vois cela Potential y, mais:
là mets Du chez mir savons voraus, le moi malheureusement (encore) pas habe.
Überhaupt sais je mir avec Unités encore pas viel anzufangen (comment déjà la fois erwähnt: je nix comprendre, je d'autre chantier! )

suis mais Gott sei Dank encore pas trop vieux, um encore lernfähig trop son! Immerhin habe je mir presque alles à Programmiertätigkeit autoditaktisch erarbeitet, souvent genug pour try and error - le more tries, le more errors et vieles pour demselben Prinzip, avec dem qui japanische Autoindustrie avant etlichen Jahren dans qui Hauteur geschossen ist: on klaut sich de überall her cela beste - et pouvoir avec un paire Modifikationen quoi Neues daraus et quelquefois étions (sommes) qui Kopien besser comme cela Original.....

mais wir kochen alle seulement avec l'eau et chacun hat la fois petite angefangen!
So, genug qui Platitüden - je exposition la fois, si mon Muster maintenant wirklich besser geworden ist comme cela Original..

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




CB
Hi,
So, jusqu'à sur ne Kleinigkeit gehts. là doit encore irgendwo un kleiner Gedankenfehler drinsein. Habe seulement momentan aucun Zeit en supplément.
KompilierenMarqueSéparation
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

Fin

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




CB
Sodale,
habe soeben ausgetrickst. So gehts wirklich:
KompilierenMarqueSéparation
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

Fin

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




Frank
Abbing
Hi,

sieht komisch aus, et ungewohnt.
pourquoi benutzt du pas SendMessage(tabcontrol&,$1309,0,0)?
 
31.01.2005  
 




CB
Hi, Frank!

Stimmt, quoi cela air angeht - gebe Dir droite.
quoi Punkt 2 angeht - si je cela gewußt hätte, hätte je mich sûrement pas à qui Community gewandt avec qui s'il te plaît um Aider. j'ai mais versucht, une eigene Solution pour trouver et après que iF mir mitgeteilt hat, qui cela de M$ gar pas vorgesehen ist et mir aussi pas weiterhelfen konnte, était je irgendwie froh, une optique pas ideale, mais wenigstens praktikable Methode trouvé trop avons.

Habe Deinen Tip naturellement juste la fois ausprobiert, bloß bekomme je entweder une Division par 0 ou bien un komplett leeres champ sans Beschriftung ou bien d'abord un leeres champ et anschließend seulement plus qui Tabs 2-6 angezeigt. Tätst Du mir s'il te plaît anhand de meinem Schema montrer, comment Du cela gemeint la hâte? Es devrait nämlich aussi pour dem Ansichtswechsel alle Tabs wieder disponible son.

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




Frank
Abbing
Hi,

so, z.B.:
KompilierenMarqueSéparation
 $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
allô gens!

si je cela Problem richtig verstanden habe, pourrait ca aider:
KompilierenMarqueSéparation
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  
 



 
- page 2 -



CB
Hi,

je sais déjà, pourquoi je volontiers dans diesem Forum unterwegs suis!
Vielen herzlichen Dank Euch beiden! vous avez mir très geholfen, beide Lösungen peux je bien verwenden.
merci nochmals!

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




p.specht

Habe Frank Abbings Solution sur XProfan-11.2a free umgestrickt et qui fehlenden Anführungszeichen ergänzt.
' VERWENDETE PROGRAMMVERSION XPROFAN 11.2a free
' Adaptiert Nov.2021 by p.specht
' !!! seulement Travailler, si alle Objekte erzeugt wurden !!!
' !!! Verändere ggf. feste Pfade dans 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
' ici peux ggf. son menu 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

    Si %KEY=2

        LET ENDE%= 1

    ELSEIF %KEY=4

    ELSEIF GETFOCUS(BUTTON1&)'BUTTON

        Si 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  
 




répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

769.765 Views

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

Themeninformationen



Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie