derbotter20's Hilfe Thread

  • Hallo StageTwo.
    Kann mir jemand sagen warum bei mir nichts ausgedruckt wird?


    [cs]using System;


    namespace ConsoleApplication_5
    {
    class Program
    {
    static void Main(string[] args)
    {
    int iLoop;


    for (iLoop = 0; iLoop == 17; iLoop++) ;
    {
    switch (iLoop)
    {
    case 1:
    Console.WriteLine(1);
    break;


    case 4:
    Console.WriteLine(4);
    break;


    case 7:
    Console.WriteLine(7);
    break;


    case 10:
    Console.WriteLine(10);
    break;


    case 13:
    Console.WriteLine(13);
    break;


    case 16:
    Console.WriteLine(16);
    break;
    }


    }
    }
    }
    }
    [/cs]

  • [cs]for (iLoop = 0; iLoop == 17; iLoop++) ;[/cs]


    Mach das Semikolon hinten weg ;) Dann klappts auch mit der for-schleife.


    EDIT: Und schreib nach der for-schleife (Immo @ Zeile 40)
    [cs]Console.Read();[/cs]
    hin. Sonst geht die Konsole direkt wieder zu.


    Gruß
    florian0

  • [cs]using System;


    namespace ConsoleApplication_5
    {
    class Program
    {
    static void Main(string[] args)
    {
    int iLoop;


    for (iLoop = 0; iLoop == 17; iLoop++)
    {
    switch (iLoop)
    {
    case 1:
    Console.WriteLine(1);
    break;


    case 4:
    Console.WriteLine(4);
    break;


    case 7:
    Console.WriteLine(7);
    break;


    case 10:
    Console.WriteLine(10);
    break;


    case 13:
    Console.WriteLine(13);
    break;


    case 16:
    Console.WriteLine(16);
    break;
    }
    Console.Read();
    }
    }
    }
    }
    [/cs]


    Klappt auch nicht. Ist es zu spät oder ich zu dumm?

  • Ne sry hab was vergessen / übersehen.


    Deine Bedingung is auch net ganz richtig.
    iLoop == 17
    Die Schleife soll ja (warscheinlich) ausgeführt werden bis iLoop == 17.
    Die for-schleife aber arbeitet SOLANGE die Bedinung wahr ist. iLoop == 17 is natürlich falsch (false) weil iLoop ja bei 0 anfängt (iLoop = 0) und dann erst hochzählt.


    Richtig wäre somit: Solange iLoop (kleiner oder gleich) 17 -> <=
    oder
    Solange iLoop NICHT 17 -> !=


    Gruß
    florian0

  • Kann ich diesn Code noch optimieren und dezimieren?

  • Gib deinen Projekten aussagekräftige Namen, ConsoleApplictaion8 ist nicht gerade optimal :P.
    Code besser bzw. überhauptmal kommentieren.
    Ich persönlich finde englische Variablennamen schöner, aber dass liegt ja bei dir.
    Lagere Klassen in eigene Dateien aus, wird sonst zu unübersichtlich.
    Die Init Funktion in der Rechteck Klasse ist unnötig

    C
    1. private int iBreite = 0;
    2. private int iHoehe = 0;


    tut dasselbe.

  • Brauche bitte Hilfe , ich verzweifel sonst noch....


    Code
    1. private void Timer_Tick(object sender, EventArgs e)
    2. {
    3. p1.Location = new Point(p1.Location.Y - 5, p1.Location.X - 5);
    4. }
    5. private void button1_Click(object sender, EventArgs e)
    6. {
    7. Timer.Enabled = true;
    8. }


    Im Timer steht folgendes

    Code
    1. private void Timer_Tick(object sender, EventArgs e)
    2. {
    3. p1.Location = new Point(p1.Location.Y - 5, p1.Location.X - 5);
    4. }


    Warum geht das Panel "Ruckartig nach oben und nicht sagen wir gleichmäßig in die Ecke? Also diagonal...

  • [cs]using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;


    namespace MehrereEreignisse
    {
    public partial class Form1 : Form
    {
    string AusgabeUrlaubsort = "Berlin";
    string AusgabeUnterkunft = "Pension";


    public Form1()
    {
    InitializeComponent();
    }
    private void Form1_Load(object sender, EventArgs e)
    {


    }
    private void optUrlaubsort_CheckedChanged(object sender, EventArgs e)
    {
    //Urlaubsort
    if (optBerlin.Checked)
    AusgabeUrlaubsort = "Berlin";
    else if (optParis.Checked)
    AusgabeUrlaubsort = "Paris";
    else
    AusgabeUrlaubsort = "Rom";


    lblAusgabe.Text = AusgabeUrlaubsort + " , " + AusgabeUnterkunft;
    }


    private void optAppartment_CheckedChanged(object sender, EventArgs e)
    {
    //Unterkunft
    if (optAppartment.Checked)
    AusgabeUnterkunft = "Appartment";
    else if (optPension.Checked)
    AusgabeUnterkunft = "Pension";
    else
    AusgabeUnterkunft = "Hotel";


    }
    }
    }[/cs]


    Kann mir bitte jemans sagen warum die Ereignissmethoden für die Groupboxen nicht aufgerufen werden?
    In meinem Buch steht es gibt eine solche Methode für Groupboxen...