Skillnad mellan versioner av "Kap 14 Windowsprogrammering (54)"

Från Mathonline
Hoppa till: navigering, sök
m
m
Rad 67: Rad 67:
 
= <b><span style="color:#931136">Fullständiga instruktioner till detta projekt finns i [http://mathonline.se/Boken%20Programmering%20i%20C%20och%20Cpp.pdf <span style="color:blue">kursboken</span>], sid 434-437.</span></b> =
 
= <b><span style="color:#931136">Fullständiga instruktioner till detta projekt finns i [http://mathonline.se/Boken%20Programmering%20i%20C%20och%20Cpp.pdf <span style="color:blue">kursboken</span>], sid 434-437.</span></b> =
  
+++
 
  
= <b><span style="color:#931136">14.8 &nbsp; Gränssnitt mot kalendern</span></b> =
+
= <b><span style="color:#931136">14.11 &nbsp; Bågar och vinklar</span></b> =
 
<div class="ovnE">
 
<div class="ovnE">
=== <b><span style="color:#931136">Projektet DeliveryDate med kontrollen DateTimePricker</span></b> ===
+
=== <b><span style="color:#931136">Projektet Arcs</span></b> ===
<big>
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Arcs.jpg]]</div>
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: DeliveryDatea.jpg]]</div>
+
 
+
Kontrollen DateTimePricker är ett gränssnitt mot aktuell kalender.
+
 
+
När ett beställningsdatum väljs i kalendern ska ett leveransdatum visas. Regler:
+
 
+
1) Leveransdatum ska i regel ligga 2 dagar efter beställningsdatum.
+
 
+
2) Söndagar kan inte levereras, dvs: Ligger en söndag mellan leverans- och
+
 
+
&nbsp;&nbsp;&nbsp; beställningsdatum, ska leveranstiden vara 3 dagar.
+
 
+
3) När formen laddas, ska dagens datum vara markerad och visas i kalendern.
+
 
+
4) Kalendern ska innehålla datum maximalt ett år efter dagens datum.
+
</big>
+
 
</div>
 
</div>
  
  
<big><big><big>Dessa regler är implementerade i koderna nedan:</big></big></big>
+
= <b><span style="color:#931136">Ny typ av grafisk applikation</span></b> =
 
+
 
+
= <b><span style="color:#931136">Kod bakom DateTimePricker</span></b> =
+
<div class="ovnC">
+
<big>
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Koden_DateTimeP.jpg]]</div>
+
</big>
+
</div>
+
 
+
 
+
= <b><span style="color:#931136">Kod bakom formen</span></b> =
+
<div class="ovnC">
+
<big>
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: Koden_Form.jpg]]</div>
+
</big>
+
</div>
+
 
+
 
+
== <b><span style="color:#931136">Fullständiga instruktioner till detta projektet DeliveryDate finns i [http://mathonline.se/Boken%20Programmering%20i%20C%20och%20Cpp.pdf <span style="color:blue">kursboken</span>], sid 428-429.</span></b> ==
+
 
+
 
+
= <b><span style="color:#931136">14.9 &nbsp; En räntekalkylator med multiline TextBox</span></b> =
+
<div class="ovnE">
+
=== <b><span style="color:#931136">Projektet TaxCalculator</span></b> ===
+
<big>
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: TaxCalculator.jpg]]</div>
+
</big>
+
</div>
+
 
+
 
+
= <b><span style="color:#931136">Kontroller</span></b> =
+
 
<div class="ovnA">
 
<div class="ovnA">
 
<big>
 
<big>
Fyra Labels <math> \qquad </math> Tre TextBoxar
+
* &nbsp; &nbsp; Inget interaktivt gränssnitt. Inga kontroller.
 
+
* &nbsp; &nbsp; Vi vill <b>rita</b> bågar och vinklarna ovan i formen.
En Button <math> \qquad\;\;\, </math> Kontrollen bredvid Antal år en <b><span style="color:red">NumericUpDown</span></b>.
+
* &nbsp; &nbsp; OBS! <b>Undvik</b> att (dubbel)klicka på formen!
 
+
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Har du gjort det av misstag, stäng projektet och börja om!
Den stora TextBoxen under Årliga saldon har egenskapen &nbsp;<b><span style="color:red">Multiline: True</span></b>.
+
 
+
De andra små TextBoxarna ovan har egenskapen <math> \qquad\quad </math> <b>Multiline: False</b>.
+
 
</big>
 
</big>
 
</div>
 
</div>
  
  
= <b><span style="color:#931136">Klassen Form1 till projektet TaxCalculator</span></b> =
+
== <b><span style="color:#931136">Fullständiga instruktioner till detta projekt finns i [http://www.mathonline.se/Progr_2/Boken%20Progr_2_Cs.pdf <i><span style="color:blue">kursboken</span></i>], sid 43-44.</span></b> ==
<div class="ovnE">
+
<div style="border:1px solid black;display:inline-table;margin-left: 0px;"> [[Image: TaxCalculator_Form1.jpg]]</div>
+
</div>
+
 
+
  
== <b><span style="color:#931136">Fullständiga instruktioner till detta projekt finns i [http://mathonline.se/Boken%20Programmering%20i%20C%20och%20Cpp.pdf <span style="color:blue">kursboken</span>], sid 430-433.</span></b> ==
 
  
 
<br><br>
 
<br><br>

Versionen från 19 december 2023 kl. 20.32

Ons 20 dec, kl 9-12


        <<  Agenda          Genomgång 54          Övningar 54          Innehåll & struktur          Nästa lektion  >>      


Kap 14   Windowsprogrammering (forts.)

14.10   Geometriska figurer

Projektet Draw

Draw.jpg


Ny typ av grafisk applikation

  •     Inget interaktivt gränssnitt. Inga kontroller.
  •     Applikationen liknar snarare ett ritprogram.
  •     Vi vill rita geometriska figurerna ovan i formen.
  •     OBS! Undvik att (dubbel)klicka på formen!

          Har du gjort det av misstag, stäng projektet och börja om!


Formens koordinatsystem

FormKoord.jpg


Att rita i formen

  •     För att kunna rita i formen, använder vi oss av verktyg som finns i ritmetoden OnPaint().
  •     Metoden OnPaint() är definierad i klassen Form som vi ärver i vår form Form1.
  •     För att kunna använda verktygen i ritmetoden OnPaint(), måste vi överskugga (override) den.
  •     Att överskugga (override) en metod betyder att ta dess huvud och definiera om dess kropp:

          Man tar över metodens namn samt parametrar (huvud) och modifierar dess funktionalitet (kropp).

  •     Koncepten överskuggning (override) och arv (inheritance) kommer vi att lära oss i

          Kap 2 Objektorienterad programmering (OOP).


Metoden OnPaint()

Högerklicka i Solution Explorer-fönstret på Form1.cs och välj View Code

OnPaint.jpg


Fullständiga instruktioner till detta projekt finns i kursboken, sid 434-437.

14.11   Bågar och vinklar

Projektet Arcs

Arcs.jpg


Ny typ av grafisk applikation

  •     Inget interaktivt gränssnitt. Inga kontroller.
  •     Vi vill rita bågar och vinklarna ovan i formen.
  •     OBS! Undvik att (dubbel)klicka på formen!

          Har du gjort det av misstag, stäng projektet och börja om!


Fullständiga instruktioner till detta projekt finns i kursboken, sid 43-44.



Gå vidare till:        när du är klar med denna genomgång.












Copyright © 2023. All Rights Reserved.