tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
2
ZUGRIFFE
654
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von Alex Duschek
    Alex Duschek Alex Duschek ist offline I AM AWESOME
    Registriert seit
    Apr 2004
    Ort
    Bartholomä (Baden-Württemberg)
    Beiträge
    514
    Code delphi:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    
    function UpperCase: string;
    var
      chars,i,p:integer;
      temp1,temp2,Text:string;
    begin
      For i := 0 to Form1.Memo2.Lines.Count-1 do
        begin
          Text := Form1.Memo2.Lines.Strings[i];
          chars := length(Text);
          temp1 := Text[1]; //Erstes Zeichen holen
          temp2 := StuffString(Text,1,1,AnsiUpperCase(temp1)); //Erstes Zeichen groß
          For p := 1 to chars do
            begin
              If Text[p] = '' then
              temp2 := StuffString(Text,p+1,1,AnsiUpperCase(Text[p+1])); //Setzt alle Anfangsbuchstaben groß
            end;
          result := temp2;
          Form3.Memo1.Lines.Add(result); //Ab ins Memo
          end;
    end;

    Ja,ich weiß, dass es noch umständlich geschrieben ist,ich hab das gerade auf die Schnelle machen müssen
    Also die Funktion soll als erstes den Anfangsbuchstaben eines Strings groß setzen (was sie auch tut) und danach den String nach Leerzeichen durchsuchen (innere For-Schleife), um danach den nächsten Buchstaben groß zu setzen. Das funktioniert leider nicht, da wird gar nix gemacht....

    Erkennt jemand den Fehler?
    Geändert von Alex Duschek (01.07.06 um 21:34 Uhr)
     
    Softwareentwickler

    Sehr gute Kenntnisse: Delphi, Java
    Gute Kenntnisse: PHP, ADA
    Grundkenntnisse: C/C++, C#, JavaScript

  2. #2
    Hellie Hellie ist offline Mitglied Brokat
    Registriert seit
    Mar 2004
    Beiträge
    252
    Hallo!

    Ist wirklich nur eine Kleinigkeit, die Verzweigung greift nicht, weil anstelle des leerzeichens ein leerer String dasteht. Wenn du zwischen die Hochkommas noch ein Leerzeichen setzt, klappt es. Übrigens hab ich den Code mal etwas... verkürzt:

    PHP-Code:
    var
      
    chars,i,p:integer;
      
    temp1,temp2,Text:string;
    begin
      
    For := 0 to Memo2.Lines.Count-do
        
    begin
          Text 
    := Memo2.Lines.Strings[i];
          
    chars := length(Text);
          
    text[1]:=AnsiUpperCase(text[1])[1];
          For 
    := 1 to chars do
            
    begin
              
    If Text[p] = ' ' then
              Text
    [p+1]:= AnsiUpperCase(text[p+1])[1]; //Setzt alle Anfangsbuchstaben groß
            
    end;
          
    Memo1.Lines.Add(text); //Ab ins Memo
          
    end;
    end
    Wohl auch noch etwas schmutzig, aber diese Funktion kannte Delphi nicht, deshalb schnell angepasst. Auch was die Memos angeht, wegen testen und so.

    lg Hellie
     

  3. #3
    Avatar von Alex Duschek
    Alex Duschek Alex Duschek ist offline I AM AWESOME
    Registriert seit
    Apr 2004
    Ort
    Bartholomä (Baden-Württemberg)
    Beiträge
    514
    Ach, sowas kotzt mich immer richtig an, wenns nur so Banalitäten sind...danke dir (wohl bald zum 100. Mal )
     
    Softwareentwickler

    Sehr gute Kenntnisse: Delphi, Java
    Gute Kenntnisse: PHP, ADA
    Grundkenntnisse: C/C++, C#, JavaScript

Ähnliche Themen

  1. Eigener CellEditor fireEditing-Funktion
    Von cr3m4 im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 3
    Letzter Beitrag: 02.04.08, 11:13
  2. Hilfe bei eigener getline() Funktion...
    Von partitionist im Forum C/C++
    Antworten: 0
    Letzter Beitrag: 29.02.08, 12:35
  3. Probleme mit eigener recv-Funktion
    Von cesupa im Forum C/C++
    Antworten: 14
    Letzter Beitrag: 13.03.07, 09:40
  4. Antworten: 2
    Letzter Beitrag: 06.09.05, 16:05
  5. Problem setTimeout in eigener Funktion
    Von stefanstfnh im Forum Javascript & Ajax
    Antworten: 2
    Letzter Beitrag: 24.02.05, 04:28