Einzeilig

Schlagwörter: 

Ansicht von 8 Antwort-Themen
  • Autor
    Beiträge
    • #19335
      Oliver122
      Teilnehmer

        Hallo zusammen,

        kann mir jemand sagen, wie ich ein Textfeld einzeilig machen kann?

        Ich möchte so Fehleingaben vorbeugen. Die Felder sollen nur eine Zeile haben und
        am besten eine maximale Länge an Zeichen.

        Danke im Voraus.

      • #19347
        Klaus Major
        Administrator

          Hi Oliver,

          schreibe so ein Skript für das oder die Feld(er):

          on returninfield
            ## Dummy Handler, so wird RETURN an das Feld gesendet aber verpufft ins Leere :-)
          end returninfield
          
          ## Wichtig, ENTER macht ungefähr das Gleiche wie RETURN, 
          ## nämlich eine neue Zeile, daher auch hier nur mit Gummi:
          on enterinfield
           ## Dummy
          end enterinfield
          
          on keydown tKey
             ## Wir lassen hier als Beispiel maximal 12 Buchstaben ins Feld eingeben!
             if the num of chars of me < 12 then
                pass keydown
             end if
          end keydown

          Gruß

          Klaus

        • #19359
          pderks
          Teilnehmer

            Hallo, Oliver

            ein anderer Vorschlag (Feld-Skript):

            on ReturnInField
            OneLine12
            end ReturnInField
            ---
            on EnterInField
            OneLine 12
            end EnterInField
            ---
            on OneLine NumOfChars
            put char 1 to NumOfChars of line 1 of me into Target
            end OneLine

            Gruß

            Peter

          • #19413
            Oliver122
            Teilnehmer

              Danke für die Hilfe


              @pderks

              Funktionier super. Leider habe ich das bisher nicht verstanden.

              Was ist char 1 von put char 1, die max. Anzahl ist es ja nicht
              Gerade das mit den Lines verstehe ich nicht richtig.

            • #19415
              Gutschi
              Teilnehmer

                Hi, hast du es schon mal mit “don’t wrap” und “tab on return” im property inspector versucht? wenn du beides anklickst in dem von dir gewünschten field, passiert bei Eingabe von Enter kein Zeilenumsprung.

              • #19420
                Oliver122
                Teilnehmer

                  DAs funktioniert gut danke

                • #19428
                  Klaus Major
                  Administrator

                    Ho Oliver,

                    Was ist char 1 von put char 1, die max. Anzahl ist es ja nicht
                    Gerade das mit den Lines verstehe ich nicht richtig.

                    Im Skript übergeben wir dem Handler eine Zahl, nämlich die maxiamale Anzahl
                    von Buchstaen, die wir haben wollen.

                    ...
                    put char 1 to NumOfChars of line 1 of me into Target
                    ...

                    Im Peters Beispiel benutzt er die Zahl 12 (NumOfChars), also steht in dieser Zeile (übersetzt):
                    Lege die Buchstaben 1 BIS 12 -> char 1 to NumOfChars, also bis zur übergebenen Zahl
                    meiner ersten Zeile in das Feld -> of line 1 of me into target

                    Gruß

                    Klaus

                  • #19438
                    pderks
                    Teilnehmer

                      Danke, Klaus,

                      ich war nicht auf dem Damm.

                      Peter

                    • #19439
                      Klaus Major
                      Administrator

                        Avec plaisir, mon ami!

                    Ansicht von 8 Antwort-Themen
                    • Du musst angemeldet sein, um auf dieses Thema antworten zu können.