Deutsch
Forum

Static Tab und Edit

 
- Seite 1 -



Rolf
Koch
Huhu Leute,

heute hab ich mal ne Frage:
Hat einer ne Idee:
@Control(STATIC,txt$,$54000106,x%,y%,breit%,hoch%,fenster&,$7918,%hinstance)
dort liegen Edits drauf. Logischerweise kann ich diese nicht mit der Tabtaste anspringen. Logisch, denn es ist kein Dialog und ich kann diesem Teil keinen 512er Wert setzen.
Auch ein Exwert $200 funktioniert nicht.
Ich benötige das Teil aber. Leider klappt es mit Getkeystate(9) auch nicht.
Ist halt blöde, wenn man nicht mit der Tabtaste zwischen den Edits hin und herspringen kann.
Hab alles versucht.

Aber, habe noch ein bisschen Hoffnung , da nichts unmöglich ist.

Rolf
 
05.02.2005  
 



 
- Seite 2 -



Uwe
''Pascal''
Niemeier
Hallo Rolf!

Es sollen mehrere Gruppen von Elementen auf einmal ein- oder ausgeblendet werden (z.B. bei Reiterwechsel in einem Tab-Control)?

Wie wäre es mit rahmenlosen Dialogen statt Statics?

Vielleicht könnte man die Statics auch einem Subclassing unterziehen, wenn nur die Nebenwirkungen nicht wären...

SeeYou
Pascal
 
07.02.2005  
 




Rolf
Koch
Hi Pascal,

ja wäre auch eine Möglichkeit, wenn man so einfach und schön wie ein Static den Dialogen von Hause aus eine weisse Hintergrundfarbe geben könnte. Von Hause aus = per Stil und nur nicht per Startpaint - Endpaint *würg*

Rolf
 
07.02.2005  
 



Rolf - Du bist doch mit der Thread.pcu vertraut - warum nimmst die nicht dafür - die ist doch wie dafür geschaffen. Ich kann Dir natürlich auch ein kleines demo dafür liefern.

Salve, iF
 
07.02.2005  
 




Rolf
Koch
Hi If,

klar bin ich damit vertraut, sogar sehr intim
Also meinste dort Neuzeichnen?
Ich hatte extra *würg* bei Startpaint geschrieben. Ich hasse Startpaint und Endpaint. Absolut langweilig

Aber wie gesagt: Nehmen wir uns dem Thema später nochmals an, da es im Moment doch nicht so wichtig ist. Es sei denn ein anderer interessiert sich weiterhin für die Fragestellung - ausser Startpaint LOL
Rolf
 
07.02.2005  
 




Jörg
Sellmeyer
Hallo Rolf,
Wie wäre es denn so:

Cls
dlg&=Createdialog(%hwnd...)
Static&=Control(Static,dlg&,....)
auf dieses Static ein Bitmap mit Handle zaubern, geht ja auch mit Bitmap aus
Speicher. Ein 1 x 1 Pixel reicht ja schon für einen weißen Hintergrund
Button&=CreateButton(%dlg,...)

So hast Du die Controls auf dem Dialog und das Static gibt Dir den weißen Hintergrund
Gruß
Jörg
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
07.02.2005  
 




Rolf
Koch
Danke auch Dir für die Antwort.

Jedoch genau so (ähnlich sieht es ja aus).
Ich bin ein Staticfetischist und daher arbeite ich nur mit Bitmaps auf Statics.
Ich benötige kein Bitmap auf dem Staticteil. Da ich per Stil das Staticcontrol in weiss färbe. Brauche also noch nicht mal ein Pixel Grafik.
Also: Control(STATIC,txt$,$54000106,x%,y%,breit%,hoch%,fenster&,$10000,%hinstance) wäre weiss = Whiterect
oder
54000105 = Grayrect
oder
54000104 = Blackrect.
Du siehst, es geht ja auch ohne Bitmap. Ich schätze Du hast leider meine Frage nicht verstanden. Wie ich was erstelle und so weiter ist ja klar . Schätzungsweise hast Du erst weiter unten angefangen zu lesen, da sieht es nach einem anderen Problem aus .
Es geht lediglich um das Problem auf Statics erstellten Edits die Tabtaste abzufragen.

Abgesehen davon bleibt in diesem Fall immer noch das Problem

Meine Erstellung:

Dialog erstellen
Static drauf (in weisem Stil)
Controls drauf
und schätzungsweise gibt es keine Lösung für das Problem, es sei den per Subclass., daß man die Tabtaste dort in den Editfeldern ansprechen kann.

Aber wie gesagt: Macht Euch jetzt nicht verrückt. Muss halt jetzt zuerst was anderes programmieren.

[quote:1267241905]
Cls
dlg&=Createdialog(%hwnd...)
Static&=Control(Static,dlg&,....)
auf dieses Static ein Bitmap mit Handle zaubern, geht ja auch mit Bitmap aus
Speicher. Ein 1 x 1 Pixel reicht ja schon für einen weißen Hintergrund
Button&=CreateButton(%dlg,...)
[/quote:1267241905]
Jo dürfte ich kennen - so arbeiten ROC, NOCTRAMIC (sehr viel) und einige meiner Beispielcodes doch.

Rolf
 
08.02.2005  
 



Moin Rolf, ich noch mal....

Mal schauen, ob ich dich bislang richtig verstanden habe:
So weit bist du schon...
KompilierenMarkierenSeparieren
Declare Static&,Edits&[5],fenster&,Focus%,txt$
WINDOWSTYLE 31
WINDOWTITLE "STATIC Control und Tabtaste",TXT$
Window 0,0-640,440
LET FENSTER&=@Control("Dialog","",$54000000,10,10,210,300,%HWND,$7917,%hinstance)
LET TXT$="Test"
LET STATIC&=@Control("STATIC",txt$,$54000106,0,0,210,300,fenster&,$7918,%hinstance,$10000)
LET EDITs&[1]=@CREATEEDIT(STATIC&,"",10,10,200,25)
LET EDITs&[2]=@CREATEEDIT(STATIC&,"",10,50,200,25)
LET EDITs&[3]=@CREATEEDIT(STATIC&,"",10,90,200,25)
LET EDITs&[4]=@CREATEEDIT(STATIC&,"",10,130,200,25)
LET EDITs&[5]=@CREATEEDIT(STATIC&,"",10,170,200,25)
@SETFOCUS(EDITs&[1])
LET FOCUS%=1

Whilenot %MENUITEM=-2

    Waitinput

WEND


Die SKCONTROL.DLL habe ich jetzt mal weggelassen - damit kenne ich mich nicht aus - WS_TABSTOP hier nachträglich in die Controls einzufügen dürfte aber eigentlich kein Problem sein - oder doch?
Welche Probleme hast du mit dem Dialog als Untergrund, warum soll der weg, und welche Probleme gibt es mit WINDOWSTYLE 512?

 
08.02.2005  
 




Rolf
Koch
Hi AH,

jo komischerweise klappt da jetzt die Tabtaste. Ich hatte auch $10000 genommen.
Vielleicht liegt es jetzt doch nur noch an den SKEdits.
Aber wirklich gut so. Vielleicht kann ich es ja dann (wenn ich da weitermache) so umsetzen. Und evtl. den SKControls den Stile beibringen.

Thx
Rolf
 
08.02.2005  
 




Michael
Dell
Hallo,

hab auch noch ein Beispiel mit WS_EX_CONTROLPARENT, weis allerdings nicht ob das mit den SKEdits auch läuft:
KompilierenMarkierenSeparieren
Bitte tabulator Taste betätigen
Def GSC(1) !"USER32.DLL","GetSysColor"
Declare dlg1&,st1&,txt1&,ed1&,ed2&,ed3&,tst&
WindowStyle 538
Cls
dlg1& = Create("Dialog",%HWnd,"Test Dialog - Bitte tabulator Taste betätigen",40,40,400,300)
st1&  = Control("Static","Dies ist ein Test!",$54010106,40,40,200,150,dlg1&,$10001,%HInstance,$050080) WS_EX_CONTROLPARENT =$050080
st1&  = Control("Static","Dies ist ein Test!",$54010106,40,120,200,150,%HWnd,$10001,%HInstance,$050080) WS_EX_CONTROLPARENT =$050080
txt1& = Create(  "Text",st1&,"Dies ist ein Test!",10, 10,180, 16)
ed1&  = Create(  "Edit",st1&,            "Edit 1",10, 40,180, 18)
ed2&  = Create(  "Edit",st1&,            "Edit 2",10, 70,180, 18)
ed3&  = Create(  "Edit",st1&,            "Edit 3",10,100,180, 18)
Sleep 1000
ShowWindow(st1&,0)
Sleep 1000
ShowWindow(st1&,1)

WhileNot Or(Equ(%Key,2),Equ(%MenuItem,-2))

    WaitInput

EndWhile

DestroyWindow(dlg1&)
End

Gruß

Michael...
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
08.02.2005  
 




Rolf
Koch
Ja, Michael, klappt auch bestens!
Wie gesagt: Dann hängt es von (mit Tab u.s.w) einem anderen Faktor ab.
Werde dann nochmals detailiert nachschauen, warum dies nicht so geht. Aber vielleicht geht es ja so jetzt mit den Beispielen, komme nur nicht dazu zu testen

Rolf
 
08.02.2005  
 




CB
Hi,

möchte Euch allen danken - ihr habt mir sehr geholfen, ein Problem zu beseitigen. Im Prinzip gings um die gleiche Ausgangssituation wie bei Rolf - nur mit Tabcontrols. Wie das mit SKControls geht, kann ich Dir leider auch nicht sagen, ich schätze aber, Sebastian wird da sicher was tricksen können.
Auch wenn Euch das keine neuen Erkenntnisse bringen wird, schicke ich mal meine Konstruktion (das primär fixierte 1. Tab ist zwar eine wilde Konstruktion, dazu habe ich von Frank und Pascal auch andere Lösungen bekommen, aber diese ist halt von mir - ich schmücke mich nun mal nur ungern mit fremden Federn):
KompilierenMarkierenSeparieren
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)
DEF GetSysColor(1) !"USER32","GetSysColor"
UserMessages &WM_COMMAND,&WM_CLOSE
Declare Ende&,TabControl&,TabItems&,AllTabsBut&,AktivesTab&,Ende&,Tab2&
Declare EditTab1&,EditTab2_1&,EditTab2_2&,EditTab3&,EditTab4&,EditTab5&,EditTab6&
Declare Control1&,Control2&,Control3&,Text1&

PROC TAB1AKTIV

    ShowWindow(AllTabsBut&,1)
    ShowWindow(Control1&,1)

ENDPROC

PROC TAB1INAKTIV

    ShowWindow(AllTabsBut&,0)
    ShowWindow(Control1&,0)

ENDPROC

PROC TAB2AKTIV

    ShowWindow(Control2&,1)

ENDPROC

PROC TAB2INAKTIV

    ShowWindow(Control2&,0)

ENDPROC

PROC TAB3AKTIV

    ShowWindow(Control3&,1)

ENDPROC

PROC TAB3INAKTIV

    ShowWindow(Control3&,0)

ENDPROC

PROC TAB4AKTIV

    ShowWindow(EditTab4&,1)

ENDPROC

PROC TAB4INAKTIV

    ShowWindow(EditTab4&,0)

ENDPROC

PROC TAB5AKTIV

    ShowWindow(EditTab5&,1)

ENDPROC

PROC TAB5INAKTIV

    ShowWindow(EditTab5&,0)

ENDPROC

PROC TAB6AKTIV

    ShowWindow(EditTab6&,1)

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")
SetWindowLong(TabControl&,&GWL_STYLE,OR(GetWindowLong(TabControl&,&GWL_STYLE),$0440))
TabItems& = 1
SendMessage(TabControl&,&TCM_SETITEMSIZE,0,MakeLong(Width(TabControl&),20))
==== Elemente Tab 1 ====
Control1& = Control("Static","",$50000006,20,30,600,410,%HWND,1001,%hInstance,$050080)
EditTab1& = Create("Edit",Control1&,"Edit in Control 1",50,50,150,19)
Text1& = Create("Text",Control1&,"Dzt. ist nur Tab 1 sichtbar",170,325,170,15)
AllTabsBut& = Create("Button",%HWND,"Show all tabs",50,350,100,20)    gesonderte Behandlung, deswegen dem Hauptfenster zugeordnet
==== Elemente Tab 2 ====
Control2& = Control("Static","",$50000006,25,50,250,200,%HWND,2001,%hInstance,$09)
Control2& = Control("Static","",$50010106,25,50,250,200,%HWND,2001,%hInstance,$050080) WS_EX_CONTROLPARENT =$050080
EditTab2_1& = Create("Edit",Control2&,"Edit 1 in Control 2",50,100,150,19)
EditTab2_2& = Create("Edit",Control2&,"Edit 2 in Control 2",50,125,150,19)
==== Elemente Tab 3 ====
Control3& = Control("Static","",$50000007,30,90,250,200,%HWND,3001,%hInstance,$050080)
EditTab3& = Create("Edit",Control3&,"Edit in Control 3",50,150,150,19)
==== Elemente Tab 4 ====
EditTab4& = Create("Edit",%HWND,"Normales Tab 4",50,200,150,19)
==== Elemente Tab 5 ====
EditTab5& = Create("Edit",%HWND,"Normales Tab 5",50,250,150,19)
==== Elemente Tab 6 ====
EditTab6& = Create("Edit",%HWND,"Normales 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
    ShowWindow(Text1&,0)

ENDPROC

Whilenot Ende&

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

    If %UMessage = &WM_CLOSE

        Ende& = 1

    ElseIf %UMessage = &WM_COMMAND

        If &ULParam = AllTabsBut&

            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 gleich angezeigt!
            ShowWindow(AllTabsBut&,0)

        EndIf

    EndIf

    If tabchanged(TabControl&)                Tab gewechselt?

        If AktivesTab& = 0

            TAB1AKTIV
            ShowWindow(AllTabsBut&,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

Gruß, Christian
 
XProfan 8/9.1, Win XP, AMD 64/3200
08.02.2005  
 



 
- Seite 3 -



Michael
Dell
Hallo,

an Tac- Controls Schraub ich auch grad rum, hier der aktuelle Stand:
KompilierenMarkierenSeparieren
Hier ein Beispiel wie man etwas einfacher die manchmal zahlreichen Controls auf Tabs umschalten kann!!!!
für jedes Tab gib es eine Basis-Static die den gesammten nutzbaren Bereich ausfüllt erst hierauf und nicht
auf dem eigenlichen Tab-Control werden alle anderen Controls eingerichtet
Def GSC(1)     !"USER32.DLL","GetSysColor"
Def gSelTab(1) SendMessage(&(1),$130B,0,0)       aktuelles Tab ermitteln
Def sSelTab(2) SendMessage(&(1),$130C,&(2),0)    neues Tab setzen
Declare tbc1&,stbc&[5],LastAcT&

Proc ChangeActTab

    Parameters TabNr&
    sSelTab(tbc1&,TabNr&)
    SetFocus(tbc1&)
    ShowWindow(stbc&[LastAcT&],0)   Deaktivieres zuletzt aktives Tab (Das Basis-Static für dieses Tab!!)
    ShowWindow(stbc&[TabNr&],1)  Aktiviere das nun aktive Tab (Das Basis-Static für dieses Tab!!)
    LastAcT& = TabNr&gSelTab(tbc1&)      Welches Tab ist nun Aktiv? (z.B.: durch anklicken)

EndProc

WindowStyle 538
Window Add(%maxX,10),0-640,480 Fenster ausserhalb erstellen
Cls GSC(15)
Aufbau der gesammten Tab-Controls und deren Kinder
tbc1&     = Control( "SysTabControl32","",$50010001,220, 20,400,360,   %HWnd,$a9000,%HInstance,$010000)Tab-Control erzeugen
InsertTab(tbc1&,0,"Eins") Erstes Tab anlegen
InsertTab(tbc1&,1,"Zwei") weiteres Tab anlegen
InsertTab(tbc1&,2,"Drei") weiteres Tab anlegen
InsertTab(tbc1&,3,"Vier") weiteres Tab anlegen
stbc&[0]  = Control( "STATIC",              "",$50010006,  2, 24,396,334,   tbc1&,$a9001,%HInstance,$010000)Basis-Static für Tab0
Control( "STATIC","Tabulatortaste",$50000000, 20, 50,140, 18,stbc&[0],$a9001,%HInstance)Textfeld für Tab0
Control(   "EDIT",             "A",$50010000, 20, 80,140, 20,stbc&[0],$a9001,%HInstance,$010200)Edit für Tab0
Control(   "EDIT",             "B",$50010000, 20,110,140, 20,stbc&[0],$a9001,%HInstance,$010200)Edit für Tab0
Control(   "EDIT",             "C",$50010000, 20,140,140, 20,stbc&[0],$a9001,%HInstance,$010200)Edit für Tab0
ShowWindow(stbc&[0],0) Basis-Static für Tab0 deaktivieren
stbc&[1]  = Control( "STATIC",              "",$50010006,  2, 24,396,334,   tbc1&,$a9002,%HInstance,$010000)Basis-Static für Tab1
Control( "STATIC","Tabulatortaste",$50000000, 20, 50,140, 18,stbc&[1],$a9002,%HInstance)Textfeld für Tab1
Control("ListBox",              "",$50010000, 20, 80,140,120,stbc&[1],$a9002,%HInstance,$010200)ListBox für Tab1
ShowWindow(stbc&[1],0) Basis-Static für Tab1 deaktivieren
stbc&[2]  = Control( "STATIC",              "",$50010006,  2, 24,396,334,   tbc1&,$a9003,%HInstance,$010000)Basis-Static für Tab2
Control( "STATIC",     "Text zu 3",$50000000, 20, 50,140, 18,stbc&[2],$a9003,%HInstance)Textfeld für Tab2
Control(   "EDIT",             "D",$50010000, 20, 80,140, 20,stbc&[2],$a9003,%HInstance,$010200)Edit für Tab0
ShowWindow(stbc&[2],0) Basis-Static für Tab2 deaktivieren
stbc&[3]  = Control( "STATIC",              "",$50010006,  2, 24,396,334,   tbc1&,$a9004,%HInstance,$010000)Basis-Static für Tab3
Control( "STATIC",     "Text zu 4",$50000000, 20, 50,140, 18,stbc&[3],$a9004,%HInstance)Textfeld für Tab3
Control(   "EDIT",             "F",$50010000, 20, 80,140, 20,stbc&[3],$a9004,%HInstance,$010200)Edit für Tab0
ShowWindow(stbc&[3],0) Basis-Static für Tab3 deaktivieren
LastAcT& = gSelTab(tbc1&)      speichern des zuletzt aktiven Tabs!
ShowWindow(stbc&[LastAcT&],1)  dessen Basis-Static aktivieren
Window 0,0-640,480 Fenster in den sichtbaren Bereich

WhileNot Or(Equ(%Key,2),Equ(%MenuItem,-2))          warte auf Beenden (X)

    WaitInput
    Case TabChanged(tbc1&): ChangeActTab(gSelTab(tbc1&))  Wenn Tabs verändert, Anzeige aktuallisieren

EndWhile

DestroyWindow(tbc1&)                                Zerstöre Tab-Control und alle Kinder
End

Nachtrag: Kleine verbesserung - 09.02.05 / 3:10

Salu

Michael...
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
08.02.2005  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

6.107 Betrachtungen

Unbenanntvor 0 min.
Peter Max Müller13.11.2017
Ernst22.04.2016
Michael Borowiak04.11.2013
Julian Schmidt30.03.2012
Mehr...

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie