private void ButtonLås_Click(object sender, EventArgs e) { if (brett.låst) { JaNeiVindu.Class1 spørreVindu = new JaNeiVindu.Class1(); if (spørreVindu.JaNei("Vil du virkelig låse opp brettet?")) { LåsOppBrett(); } } else { if (brett.feil) { JaNeiVindu.Class1 spørreVindu = new JaNeiVindu.Class1(); if (spørreVindu.JaNei("Det er feil på brettet. Vil du likevel låse?")) { LåsBrett(); } } else { LåsBrett(); } } }
private void ButtonLagSpill_Click(object sender, EventArgs e) { string lenke = ""; if (nRot == 3) { lenke = "http://www.menneske.no/sudoku/random.html"; } else if (nRot == 4) { lenke = "http://www.menneske.no/sudoku/4/random.html"; } else { labelTekst.Text = "Greier ikke å lage " + nRot + "x" + nRot + " brett."; return; } bool fortsett = true; if (brett.gjenværendeCeller < n * n) { JaNeiVindu.Class1 spørreVindu = new JaNeiVindu.Class1(); fortsett = spørreVindu.JaNei("Hvis du fortsetter, så vil du miste det nåværendet spillet.\nVil du opprette nytt spill?"); } if (fortsett) { brett.LagBrettFraNett(lenke, out string tekst); OppdaterDgValue(); NullstillKladd(); BindKladd(); labelTekst.Text = tekst; } }
private void ButtonVisLøsning_Click(object sender, EventArgs e) { JaNeiVindu.Class1 spørreVindu = new JaNeiVindu.Class1(); if (spørreVindu.JaNei("Trykk ja for å vise løsning på dette brettet")) { FormVisLøsning form = new FormVisLøsning(brett.VisLøstBrett(out string løsning)); form.ShowDialog(); //Bruker ikke Messagebox siden den ikke har konstant spacing for hvert tegn. labelTekst.Text = løsning; } }
void TekstN_LostFocus(object sender, EventArgs e) { if (focus) { if (Int32.TryParse(tekstN.Text, out int nRotTemp) && nRotTemp > 1 && nRotTemp < 7) { if (nRot == nRotTemp) { return; } focus = false; bool fortsett = true; if (brett.gjenværendeCeller < n * n) { JaNeiVindu.Class1 spørreVindu = new JaNeiVindu.Class1(); fortsett = spørreVindu.JaNei("Hvis du fortsetter, så vil du miste det nåværendet spillet.\nVil du endre brettstørrelsen?"); } if (fortsett) { RemoveObjects(); nRot = nRotTemp; n = nRot * nRot; double faktor = 1; if (nRot == 3) { faktor = 0.9; } else if (nRot == 4) { faktor = 0.7; } else if (nRot == 5) { faktor = 0.5; } størrelse = new Størrelse(faktor, nRot); CreateObjects(); Construct(); LayoutObjects(); this.Refresh(); brett = new Brett(nRot); OppdaterDgValue(); NullstillKladd(); BindKladd(); } focus = true; } else { labelTekst.Text = "Kunne ikke lese verdien. Venligst oppgi verdien som et heltall (f. eks. 4)."; } } }
private void ButtonNy_Click(object sender, EventArgs e) { bool fortsett = true; if (brett.gjenværendeCeller < n * n) { JaNeiVindu.Class1 spørreVindu = new JaNeiVindu.Class1(); fortsett = spørreVindu.JaNei("Hvis du fortsetter, så vil du miste det nåværendet spillet.\nVil du nullstille brettet?"); } if (fortsett) { brett = new Brett(nRot); OppdaterDgValue(); NullstillKladd(); BindKladd(); } }
private void ButtonSisteRette_Click(object sender, EventArgs e) { if (brett.feil) { JaNeiVindu.Class1 spørreVindu = new JaNeiVindu.Class1(); if (spørreVindu.JaNei("Trykk ja for å åpne siste brettversjon med alle ruter riktige.")) { brett.HentSisteRetteBrett(); OppdaterDgValue(); KopierKladdFraBrett(); BindKladd(); } } else { labelTekst.Text = "Ingen feil på brettet."; } }
private void ButtonÅpne_Click(object sender, EventArgs e) { if (brett.gjenværendeCeller != n * n) { JaNeiVindu.Class1 spørreVindu = new JaNeiVindu.Class1(); if (!spørreVindu.JaNei("Hvis du fortsetter, så vil du miste det nåværendet brettet.\nVil du åpne et lagret brett?")) { return; } } string mappe = Application.StartupPath + "\\Lagret_brett\\"; string[] filer = System.IO.Directory.GetFiles(mappe, "*.dat"); for (int i = 0; i < filer.Length; i++) { filer[i] = filer[i].Remove(0, mappe.Length); filer[i] = filer[i].Remove(filer[i].Length - 4); //Removes .dat ending } LagreÅpne form = new LagreÅpne(filer, false); form.ShowDialog(); string fil = form.Fil; if (String.IsNullOrEmpty(fil)) { return; } fil = new System.IO.DirectoryInfo(Application.StartupPath).FullName + "\\Lagret_brett\\" + fil + ".dat"; NullstillKladd(); if (!brett.Åpne(fil, out string beskjed)) { labelTekst.Text = beskjed; return; } OppdaterDgValue(); brett.VisLøstBrett(out string løsning); labelTekst.Text = løsning; KopierKladdFraBrett(); BindKladd(); }