Français
Source/ Codesnippets

Besserer Tabcontrol Umgang

 
- page 1 -



ByteAttack
dans qui HTML-Aider de XProfan volonté chez einem Tabwechsel chaque einzelne Element chez einem Tabwechsel ausgeblendet. und dir mais aussi viel eleganter sur une Dialog.
Beispiel:
KompilierenMarqueSéparation
 $P*
USERMESSAGES 16
Declare ende%,Tab&,TabLinks%,TabRechts%,TabOben%,TabUnten%
Declare Tab1Dialog&,Tab2Dialog&,Tab3Dialog&
Declare Wechsel0&,Wechsel1&,Wechsel2&
Def GetSysColor(1) !USER32,GetSysColor
Def Setactivetab(2) Sendmessage(&(1),$0130C,&(2),0)

Proc Tabgross   by iF (www.xprofan.com)

    Parameters Reiter%
    STRUCT RECT=LEFT&,TOP&,RIGHT&,BOTTOM&
    DECLARE MEINREC#
    DIM MEINREC#,RECT
    SENDMESSAGE(TAB&,$1300+10,Reiter%,ADDR(MEINREC#))
    TabLinks%=MEINREC#.LEFT&
    TabRechts%=MEINREC#.RIGHT&
    TabOben%=MEINREC#.TOP&
    TabUnten%=MEINREC#.BOTTOM&
    DISPOSE MEINREC#

EndProc

Proc Elemente  Irgendwelche Element zum Testen

    Create(Edit,Tab1Dialog&,Eingabe 1,10,10,100,24)
    Create(Edit,Tab1Dialog&,Eingabe 2,10,40,100,24)
    Create(Edit,Tab1Dialog&,Eingabe 3,10,70,100,24)
    Create(Button,Tab1Dialog&,Button 1,120,10,100,24)
    Create(Button,Tab1Dialog&,Button 2,120,40,100,24)
    Create(Button,Tab1Dialog&,Button 3,120,70,100,24)
    Create(Edit,Tab2Dialog&,Eingabe 4,100,10,100,24)
    Create(Edit,Tab2Dialog&,Eingabe 5,100,40,100,24)
    Create(Edit,Tab2Dialog&,Eingabe 6,100,70,100,24)
    Create(Button,Tab2Dialog&,Button 4,210,10,100,24)
    Create(Button,Tab2Dialog&,Button 5,210,40,100,24)
    Create(Button,Tab2Dialog&,Button 6,210,70,100,24)
    Create(Edit,Tab3Dialog&,Eingabe 7,200,10,100,24)
    Create(Edit,Tab3Dialog&,Eingabe 8,200,40,100,24)
    Create(Edit,Tab3Dialog&,Eingabe 9,200,70,100,24)
    Create(Button,Tab3Dialog&,Button 7,310,10,100,24)
    Create(Button,Tab3Dialog&,Button 8,310,40,100,24)
    Create(Button,Tab3Dialog&,Button 9,310,70,100,24)

EndProc

Proc MakeTab  Erstellt Tabs & Controls

    Tab&=Create(TabCtrl,%hwnd,Reiter 1,5,5,700,500)
    InsertTab(Tab&,1,Reiter 2)
    InsertTab(Tab&,2,Reiter 3)
    Tabgross 0
    Tab1Dialog&=Control(DIALOG,,$54000000,TabLinks%,TabOben%+TabUnten%,width(Tab&)-(TabLinks%*3),height(Tab&)-(TabUnten%+(TabOben%*3)),Tab&,2000,%hinstance)
    Tab2Dialog&=Control(DIALOG,,$54000000,TabLinks%,TabOben%+TabUnten%,width(Tab&)-(TabLinks%*3),height(Tab&)-(TabUnten%+(TabOben%*3)),Tab&,2000,%hinstance)
    Tab3Dialog&=Control(DIALOG,,$54000000,TabLinks%,TabOben%+TabUnten%,width(Tab&)-(TabLinks%*3),height(Tab&)-(TabUnten%+(TabOben%*3)),Tab&,2000,%hinstance)
    ShowWindow(Tab2Dialog&,0)
    ShowWindow(Tab3Dialog&,0)
    Elemente

EndProc

Proc TabWechsel

    ShowWindow(Tab1Dialog&,GetActiveTab(Tab&)=0)
    ShowWindow(Tab2Dialog&,GetActiveTab(Tab&)=1)
    ShowWindow(Tab3Dialog&,GetActiveTab(Tab&)=2)

EndProc

SetTrueColor 1
WindowStyle 24
WindowTitle Tab´s
Window ((%maxX/2)-400),((%maxY/2)-300)-800,600
UseFont Verdana,16,0,1,0,0
SetDialogFont 1
CLS GetSysColor(15)
MakeTab
Wechsel0&=Create(Button,%hwnd,Reiter 1,10,530,100,24)
Wechsel1&=Create(Button,%hwnd,Reiter 2,120,530,100,24)
Wechsel2&=Create(Button,%hwnd,Reiter 3,230,530,100,24)

WhileNot ende%

    WaitInput

    If %Umessage=16  X

        ende%=1

    ElseIf TabChanged(Tab&)  TabClicked

        Tabwechsel

    ElseIf Clicked(Wechsel0&)  Programmierbarer Wechsel

        Setactivetab(Tab&,0)
        Tabwechsel

    ElseIf Clicked(Wechsel1&)

        Setactivetab(Tab&,1)
        Tabwechsel

    ElseIf Clicked(Wechsel2&)

        Setactivetab(Tab&,2)
        Tabwechsel

    EndIf

Wend

 
Website:  [...] 
Facebook:  [...] 
21.11.2007  
 



« cette Beitrag wurde comme Solution gekennzeichnet. »


Jörg
Sellmeyer

 $P*
USERMESSAGES 16
Déclarer ende%,Tab&,TabLinks%,TabRechts%,TabOben%,TabUnten%
Déclarer Tab1Dialog&,Tab2Dialog&,Tab3Dialog&
Déclarer change0&,change1&,change2&
Def GetSysColor(1) !"User32","GetSysColor"
Def Setactivetab(2) SendMessage(&(1),$0130C,&(2),0)

Proc Tabgross'by iF (www.XProfan.com)

    Paramètres Reiter%
    STRUCT RECT=LEFT&,TOP&,RIGHT&,BOTTOM&
    DECLARE MEINREC#
    DIM MEINREC#,RECT
    SENDMESSAGE(TAB&,$1300+10,Reiter%,ADDR(MEINREC#))
    TabLinks%=MEINREC#.LEFT&
    TabRechts%=MEINREC#.RIGHT&
    TabOben%=MEINREC#.TOP&
    TabUnten%=MEINREC#.BOTTOM&
    DISPOSE MEINREC#

ENDPROC

Proc Elemente' Irgendwelche Element zum Testen

    Créer("Edit",Tab1Dialog&,"Eingabe 1",10,10,100,24)
    Créer("Edit",Tab1Dialog&,"Eingabe 2",10,40,100,24)
    Créer("Edit",Tab1Dialog&,"Eingabe 3",10,70,100,24)
    Créer("Button",Tab1Dialog&,"Button 1",120,10,100,24)
    Créer("Button",Tab1Dialog&,"Button 2",120,40,100,24)
    Créer("Button",Tab1Dialog&,"Button 3",120,70,100,24)
    Créer("Edit",Tab2Dialog&,"Eingabe 4",100,10,100,24)
    Créer("Edit",Tab2Dialog&,"Eingabe 5",100,40,100,24)
    Créer("Edit",Tab2Dialog&,"Eingabe 6",100,70,100,24)
    Créer("Button",Tab2Dialog&,"Button 4",210,10,100,24)
    Créer("Button",Tab2Dialog&,"Button 5",210,40,100,24)
    Créer("Button",Tab2Dialog&,"Button 6",210,70,100,24)
    Créer("Edit",Tab3Dialog&,"Eingabe 7",200,10,100,24)
    Créer("Edit",Tab3Dialog&,"Eingabe 8",200,40,100,24)
    Créer("Edit",Tab3Dialog&,"Eingabe 9",200,70,100,24)
    Créer("Button",Tab3Dialog&,"Button 7",310,10,100,24)
    Créer("Button",Tab3Dialog&,"Button 8",310,40,100,24)
    Créer("Button",Tab3Dialog&,"Button 9",310,70,100,24)

ENDPROC

Proc MakeTab' Erstellt Tabs & Controls

    Tab&=Créer("TabCtrl",%hwnd,"Reiter 1",5,5,700,500)
    InsertTab(Tab&,1,"Reiter 2")
    InsertTab(Tab&,2,"Reiter 3")
    Tabgross 0
    Tab1Dialog&=Contrôle("Dialogue",»,$54000000,TabLinks%,TabOben%+TabUnten%,width(Tab&)-(TabLinks%*3),height(Tab&)-(TabUnten%+(TabOben%*3)),Tab&,2000,%HINSTANCE)
    Tab2Dialog&=Contrôle("Dialogue",»,$54000000,TabLinks%,TabOben%+TabUnten%,width(Tab&)-(TabLinks%*3),height(Tab&)-(TabUnten%+(TabOben%*3)),Tab&,2000,%HINSTANCE)
    Tab3Dialog&=Contrôle("Dialogue",»,$54000000,TabLinks%,TabOben%+TabUnten%,width(Tab&)-(TabLinks%*3),height(Tab&)-(TabUnten%+(TabOben%*3)),Tab&,2000,%HINSTANCE)
    ShowWindow(Tab2Dialog&,0)
    ShowWindow(Tab3Dialog&,0)
    Elemente

ENDPROC

Proc TabWechsel

    ShowWindow(Tab1Dialog&,GetActiveTab(Tab&)=0)
    ShowWindow(Tab2Dialog&,GetActiveTab(Tab&)=1)
    ShowWindow(Tab3Dialog&,GetActiveTab(Tab&)=2)

ENDPROC

SetTrueColor 1
Fenêtre Style 24
Titre de la fenêtre "Tabs"
Fenêtre ((%maxx/2)-400),((%maxY/2)-300)-800,600
UseFont "Verdana",16,0,1,0,0
SetDialogFont 1
CLS GetSysColor(15)
MakeTab
Wechsel0&=Créer("Button",%hwnd,"Reiter 1",10,530,100,24)
Wechsel1&=Créer("Button",%hwnd,"Reiter 2",120,530,100,24)
Wechsel2&=Créer("Button",%hwnd,"Reiter 3",230,530,100,24)

WhileNot ende%

    WaitInput

    Si %Umessage=16'X

        ende%=1

    ElseIf TabChanged(Tab&)'TabClicked

        Tabwechsel

    ElseIf Clicked(change0&)'Programmierbarer change

        Setactivetab(Tab&,0)
        Tabwechsel

    ElseIf Clicked(change1&)

        Setactivetab(Tab&,1)
        Tabwechsel

    ElseIf Clicked(change2&)

        Setactivetab(Tab&,2)
        Tabwechsel

    EndIf

Wend

 
XProfan X4
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
23.06.2018  
 




Jörg
Sellmeyer
tu peux Dir encore un paire Zeilen sparen:
KompilierenMarqueSéparation
Proc TabWechsel

    ShowWindow(Tab1Dialog&,GetActiveTab(Tab&)=0)
    ShowWindow(Tab2Dialog&,GetActiveTab(Tab&)=1)
    ShowWindow(Tab3Dialog&,GetActiveTab(Tab&)=2)

EndP
>

ensuite braucht cela dans qui Ifstruktur gar pas plus aufzutauchen.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
21.11.2007  
 




Jörg
Sellmeyer

 $P*
USERMESSAGES 16
Déclarer ende%,Tab&,TabLinks%,TabRechts%,TabOben%,TabUnten%
Déclarer Tab1Dialog&,Tab2Dialog&,Tab3Dialog&
Déclarer change0&,change1&,change2&
Def GetSysColor(1) !"User32","GetSysColor"
Def Setactivetab(2) SendMessage(&(1),$0130C,&(2),0)

Proc Tabgross'by iF (www.XProfan.com)

    Paramètres Reiter%
    STRUCT RECT=LEFT&,TOP&,RIGHT&,BOTTOM&
    DECLARE MEINREC#
    DIM MEINREC#,RECT
    SENDMESSAGE(TAB&,$1300+10,Reiter%,ADDR(MEINREC#))
    TabLinks%=MEINREC#.LEFT&
    TabRechts%=MEINREC#.RIGHT&
    TabOben%=MEINREC#.TOP&
    TabUnten%=MEINREC#.BOTTOM&
    DISPOSE MEINREC#

ENDPROC

Proc Elemente' Irgendwelche Element zum Testen

    Créer("Edit",Tab1Dialog&,"Eingabe 1",10,10,100,24)
    Créer("Edit",Tab1Dialog&,"Eingabe 2",10,40,100,24)
    Créer("Edit",Tab1Dialog&,"Eingabe 3",10,70,100,24)
    Créer("Button",Tab1Dialog&,"Button 1",120,10,100,24)
    Créer("Button",Tab1Dialog&,"Button 2",120,40,100,24)
    Créer("Button",Tab1Dialog&,"Button 3",120,70,100,24)
    Créer("Edit",Tab2Dialog&,"Eingabe 4",100,10,100,24)
    Créer("Edit",Tab2Dialog&,"Eingabe 5",100,40,100,24)
    Créer("Edit",Tab2Dialog&,"Eingabe 6",100,70,100,24)
    Créer("Button",Tab2Dialog&,"Button 4",210,10,100,24)
    Créer("Button",Tab2Dialog&,"Button 5",210,40,100,24)
    Créer("Button",Tab2Dialog&,"Button 6",210,70,100,24)
    Créer("Edit",Tab3Dialog&,"Eingabe 7",200,10,100,24)
    Créer("Edit",Tab3Dialog&,"Eingabe 8",200,40,100,24)
    Créer("Edit",Tab3Dialog&,"Eingabe 9",200,70,100,24)
    Créer("Button",Tab3Dialog&,"Button 7",310,10,100,24)
    Créer("Button",Tab3Dialog&,"Button 8",310,40,100,24)
    Créer("Button",Tab3Dialog&,"Button 9",310,70,100,24)

ENDPROC

Proc MakeTab' Erstellt Tabs & Controls

    Tab&=Créer("TabCtrl",%hwnd,"Reiter 1",5,5,700,500)
    InsertTab(Tab&,1,"Reiter 2")
    InsertTab(Tab&,2,"Reiter 3")
    Tabgross 0
    Tab1Dialog&=Contrôle("Dialogue",»,$54000000,TabLinks%,TabOben%+TabUnten%,width(Tab&)-(TabLinks%*3),height(Tab&)-(TabUnten%+(TabOben%*3)),Tab&,2000,%HINSTANCE)
    Tab2Dialog&=Contrôle("Dialogue",»,$54000000,TabLinks%,TabOben%+TabUnten%,width(Tab&)-(TabLinks%*3),height(Tab&)-(TabUnten%+(TabOben%*3)),Tab&,2000,%HINSTANCE)
    Tab3Dialog&=Contrôle("Dialogue",»,$54000000,TabLinks%,TabOben%+TabUnten%,width(Tab&)-(TabLinks%*3),height(Tab&)-(TabUnten%+(TabOben%*3)),Tab&,2000,%HINSTANCE)
    ShowWindow(Tab2Dialog&,0)
    ShowWindow(Tab3Dialog&,0)
    Elemente

ENDPROC

Proc TabWechsel

    ShowWindow(Tab1Dialog&,GetActiveTab(Tab&)=0)
    ShowWindow(Tab2Dialog&,GetActiveTab(Tab&)=1)
    ShowWindow(Tab3Dialog&,GetActiveTab(Tab&)=2)

ENDPROC

SetTrueColor 1
Fenêtre Style 24
Titre de la fenêtre "Tabs"
Fenêtre ((%maxx/2)-400),((%maxY/2)-300)-800,600
UseFont "Verdana",16,0,1,0,0
SetDialogFont 1
CLS GetSysColor(15)
MakeTab
Wechsel0&=Créer("Button",%hwnd,"Reiter 1",10,530,100,24)
Wechsel1&=Créer("Button",%hwnd,"Reiter 2",120,530,100,24)
Wechsel2&=Créer("Button",%hwnd,"Reiter 3",230,530,100,24)

WhileNot ende%

    WaitInput

    Si %Umessage=16'X

        ende%=1

    ElseIf TabChanged(Tab&)'TabClicked

        Tabwechsel

    ElseIf Clicked(change0&)'Programmierbarer change

        Setactivetab(Tab&,0)
        Tabwechsel

    ElseIf Clicked(change1&)

        Setactivetab(Tab&,1)
        Tabwechsel

    ElseIf Clicked(change2&)

        Setactivetab(Tab&,2)
        Tabwechsel

    EndIf

Wend

 
XProfan X4
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
23.06.2018  
 



Zum Quelltext


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

7.200 Views

Untitledvor 0 min.
Axel Berse08.11.2023
Sven Bader14.03.2023
Normann Strübli04.02.2023
RudiB.02.10.2022
plus...

Themeninformationen

cet Thema hat 2 participant:

Jörg Sellmeyer (2x)
ByteAttack (1x)


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