Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   C# WinForms Toolbar, wie benutzt man die? (https://www.delphipraxis.net/46217-winforms-toolbar-wie-benutzt-man-die.html)

JayK 20. Mai 2005 16:46


WinForms Toolbar, wie benutzt man die?
 
Hallo,

ich hab mich gerade mal so ein bisschen in C# eingelesen und bin bei der Windows-Forms-Toolbar auf ein Problem gestoßen:
man kann die Buttons gar nicht einzeln anwählen.
Wie soll man da die Ereignisse für einen Button schreiben, wenn man dann gar keine selbstständigen Buttons hat???
Die Toolbar hat ein Click Ereignis, dass ausgelöst wird, wenn man auf irgenteinen Button klickt... Muss man das vllt. irgentwie rausfinden, welcher Button es nun war??? Wenn ja, wie geht das?

Schon mal Danke im voraus,
JayK

DGL-luke 20. Mai 2005 16:52

Re: WinForms Toolbar, wie benutzt man die?
 
in delphi könntest du auf

Delphi-Quellcode:
(sender as TButton).name
zugreifen. das ganze heisst sich "typecast" und geht in C# sicher auch. wie genau, weiss ich allerdings nicht.

JayK 20. Mai 2005 17:00

Re: WinForms Toolbar, wie benutzt man die?
 
Zitat:

Zitat von DGL-luke
in delphi könntest du auf

Delphi-Quellcode:
(sender as TButton).name
zugreifen. das ganze heisst sich "typecast" und geht in C# sicher auch. wie genau, weiss ich allerdings nicht.

Dazu müsste ich ja den Klassen- oder Typennamen von potentiellen ToolButtons kennen, die es ja anscheinend nicht zu geben scheint. :roll:

MathiasSimmack 20. Mai 2005 17:03

Re: WinForms Toolbar, wie benutzt man die?
 
Es steht sogar ein Beispiel im .NET Framework SDK von Microsoft. Und rausreden, es sei nicht die von dir benutzte Sprache, kannst du dich nicht. :lol:

Code:
      void ToolBar1ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)
      {
         switch(toolBar1.Buttons.IndexOf(e.Button)) {
            case 0:
               // mach was für Button 1
               break;
            case 1:
               // mach was für Button 2
            case 2:
               // Vergiss es!! Das ist ein Separator :o)
               break;
            case 3:
               // mach was für Button 3
               break;
               
            // mehr ...
         }
      }
(ms-help://MS.NETFrameworkSDKv1.1.DE/cpref/html/frlrfSystemWindowsFormsToolBarClassTopic.htm)

Mit dem ToolStrip-Control aus dem .NET Framework 2.0 wird´s wieder einfacher. Da gibt´s für jeden Button wieder ein eigenes Click-Ereignis. :stupid:

JayK 20. Mai 2005 17:16

Re: WinForms Toolbar, wie benutzt man die?
 
Zitat:

Zitat von MathiasSimmack
Es steht sogar ein Beispiel im .NET Framework SDK von Microsoft. Und rausreden, es sei nicht die von dir benutzte Sprache, kannst du dich nicht. :lol:

Im .NET Framework SDK hatte ich mit der Delphi-Hilfe gesucht, aber nischt passendes gefunden...

Zitat:

Zitat von MathiasSimmack
Code:
   [muss ich glaub ich nicht unbedingt zitieren...]
(ms-help://MS.NETFrameworkSDKv1.1.DE/cpref/html/frlrfSystemWindowsFormsToolBarClassTopic.htm)

Hab mir schon gedacht, dass da was mit switch gemacht werden muss. :wink:
Vielen Dank, das klappt. :D

Zitat:

Zitat von MathiasSimmack
Mit dem ToolStrip-Control aus dem .NET Framework 2.0 wird´s wieder einfacher. Da gibt´s für jeden Button wieder ein eigenes Click-Ereignis. :stupid:

Wann kommt das bloß raus??? :gruebel:

MathiasSimmack 20. Mai 2005 17:20

Re: WinForms Toolbar, wie benutzt man die?
 
Im 4. Quartal? :gruebel: Aber mit der Beta 2 kann man schon rumspielen. Ich mag besonders das automatische Positionieren der Controls auf der Form. Also, wenn du dich dem Rand näherst, siehst du kleine Abstandslinien. Dadurch kann man alle Controls passend anordnen. Nur Corsavy spinnt noch ein bisschen und versaut den Quellcode. :cry:


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:15 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz