Forum | | | | - 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 |
| | | | |
| | | | | - 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 |
| | | | |
| | 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éparationDEF 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 |
| | | | |
| | | 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 |
| | | | |
| | 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 |
| | | | |
| | 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éparationDEF 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 |
| | | | |
| | CB | Sodale, habe soeben ausgetrickst. So gehts wirklich: KompilierenMarqueSéparationDEF 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 |
| | | | |
| | Frank Abbing | Hi,
sieht komisch aus, et ungewohnt. pourquoi benutzt du pas SendMessage(tabcontrol&,$1309,0,0)? |
| | | | |
| | 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 |
| | | | |
| | 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
|
| | | | |
| | Uwe ''Pascal'' Niemeier | allô gens!
si je cela Problem richtig verstanden habe, pourrait ca aider: KompilierenMarqueSéparationwindow 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! |
| | | | |
| | | | - 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 |
| | | | |
| | 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 11Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 23.11.2021 ▲ |
| |
|
répondreOptions du sujet | 768.820 Views |
Themeninformationencet Thema hat 5 participant: |