azok: problem mit einer verschachtelten for-schleife

hi!

folgendes problem bezieht sich zwar auf c#, doch von der logik dürfte es jeder programmiersprache ziemlich ähnlich sein. - folgendes: ich programmiere zzt an einem (freeware)html-editor. nun bin ich dabei eine funktion zum einfügen einer tabelle zu schreiben, der hauptteil hat folgenden code:

private void pbOK_Click(object sender, EventArgs e)
        {
            string TableCode;
            decimal zeile, spalte;

zeile = this.nupRow.Value;  //werte aus der "numerischen combobox" holen
            spalte = this.nupCol.Value;

TableCode = "<table>\n";

for(int i=0; i<zeile; i++)
            {
                TableCode += " <tr>\n";

for (int x = 0; x < spalte; x++)
                {
                    TableCode += "  <td></td>\n";
                }

TableCode += " </tr>\n";
            }

TableCode += "</table>\n";

this.cf.PasteTable = TableCode;
            this.Close();
        }

es funktioniert soweit alles. - gebe ich jedoch eine tabelle des formates 0 x 2 an, so erhalte ich (logischerweise) als ausgabe <table></table>, da die erste for-schleife nicht ausgeführt wird und somit auch die zweite nicht... - wie könnte ich das lösen? muss ich da anders verschachteln oder über if etc. arbeiten?

lg
azok

--
Murphys Law: "Alles Schöne im Leben ist entweder illegal, ungesetzlich oder es macht dick."
Selfcode: ie:% fl:( br:> va:) ls:& fo:) rl:( n4:° ss:| de:] js:| ch:( sh:) mo:) zu:)
  1. hi,

    es funktioniert soweit alles. - gebe ich jedoch eine tabelle des formates 0 x 2 an, so erhalte ich (logischerweise) als ausgabe <table></table>, da die erste for-schleife nicht ausgeführt wird und somit auch die zweite nicht... - wie könnte ich das lösen?

    frage die startparameter auf gültigkeit ab, _bevor_ du deine funktion etwas anderes tun lässt.

    if(zeilenzahl gleich 0 oder spaltenzahl gleich 0) {
      // rücksprung, fehlermeldung, wasauchimmer
    }
    else {
      // hier deine schleifen zum erstellen einer tabelle
    }

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
  2. Hallo azok!

    Da Du einen HTML-Editor programmierst und wir den vielleicht in einigen Jahren nutzen werden, frage ich mich schon, ob ich eine Auswahlmöglichkeit vorfinden möchte, bei der Tabellen mit 0 Zeilen oder 0 Spalten angeben kann.

    Ich würde also nicht an der Schleife basteln, sondern an dem Element, welches diese Schleife mit den Werten versorgt ;-)

    lg

    norbert =:-)