Announcement

Collapse
No announcement yet.

Aktives Ratser erstellen?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Aktives Ratser erstellen?

    Hallo,

    also mein problem ist es, ein Raster über ein Layout legen und dann über die auswahl verschiedener segmente des Rasters (Bsp: A1, B2, C3, D4,...) die Gesamtlänge der Linie zu erhalten.

    Die Segmente sollten durch anklicken aktiv werden!zbsp farbe ändern bzw. soll in ein memo eingetragen werden welches segment angeklickt worden ist.

    Ich hab in der Sparte wirklich keine ahnung und hoff das mir hier jemand tipps geben kann oder gar ein beispiel hat!
    bisher habe ich nur ein normales raster mit canvas gezeichnet.

    bei unverständnis oder fragen...einfach schreiben!

    schonmal ein danke für die mühe!!

    gruß sven

  • #2
    In C/C++ gibt es kein Layouts / Canvas

    Mit welchem zusätzlichen Framework arbeitest du?
    Christian

    Comment


    • #3
      ich arbeite mir dem borland c++ builder 6 und dort mit der paintbox

      zumindest bisher..bis ich eine andere lösung habe

      Comment


      • #4
        Es ist wohl sinnvoller, das Raster aus einzelnen TImage Komponenten zu erstellen, die du anordnest. Dann hast du auch die Ereignisse
        Christian

        Comment


        • #5
          aber ich möchte keine felder die ich anklicken kann sondern linien, oder versteh ich dich da grad falsch?

          Comment


          • #6
            Dann musst du

            - In der Paintbox bestimmen wo der Mausklick war
            - in Abhängigkeit davon die nächste Linie ermitteln
            - den Inhalt der Paintbox neu zeichnen und dabei die gewählte Linie in der gewünschten Farbe
            Christian

            Comment


            • #7
              okay und wie bestimme ich wo der mausklich war und wie bestimme ich dann die nächste linie?

              Comment


              • #8
                Wenn die TPaintbox kein onClick Event hat, musst du das on Click des Parent verwenden und die Koordinaten anhand der Position der Paintbox bezogen auf diese umrechnen. Da du ja selbst das Raster in die Box malst, wirst du ja wissen wie du das machst (bsp. alle 10 x 10 Pixel). Ein Mouse X Wert von 12 bedeutet dann also, das die 2 Linie anders zu färben ist. Der Punkt liegt zwischen 10 und 20, und die geringste Differenz besteht zu 10
                Ist keine einfache Aufgabe
                Christian

                Comment


                • #9
                  okay danke schonmal.. hört sich nicht wirklich einfach an!
                  gibt es hierfür nicht schon vorgefertigt irgendwelche bibliotheken oder eine einfachere lösung?

                  Comment


                  • #10
                    Nicht das ich wüsste...aber da ich kein Krösus bin, habe ich schon lange nicht mehr mit dem C++Builder gearbeitet, bin also nicht auf dem neusten Stand
                    Christian

                    Comment

                    Working...
                    X