Problem z programem w C++ Builder


(Jonek29) #1

Mam C++ Builder 6 i od nie dawna uczę się programowania. Napisałem mały programik, a dokładniej kalkulator. Otóż zapisywałem plik po każdej zmianie której dokonałem. Aż w końcu wyskoczył mi jakiś błąd kompilatora i aplikacja zawiesiła się. Uruchomiłem ponownie program i otworzyłem mój projekt a tu nie działa po prostu nie chce się skompilować. Poniżej zamieszczam cały kod źródłowy.

Plik itcalc8.h

//---------------------------------------------------------------------------


#ifndef itcalc8H

#define itcalc8H

//---------------------------------------------------------------------------

#include 

#include 

#include 

#include 

//---------------------------------------------------------------------------

class TForm1 : public TForm

{

__published:	// IDE-managed Components

        TButton *suma;

        TEdit *liczba1;

        TEdit *liczba2;

        TLabel *Label1;

        TLabel *Label2;

        TEdit *wynik;

        TButton *roznica;

        TLabel *Label3;

        TLabel *Label4;

        TLabel *Label5;

        TButton *mnozenie;

        TButton *dzielenie;

        TLabel *Label6;

        TEdit *bok_1;

        TEdit *bok_2;

        TLabel *Label7;

        TLabel *Label8;

        TButton *pole_kwadratu;

        TButton *pole_trojkata;

        TButton *pole_prostokata;

        TLabel *Label9;

        TLabel *Label10;

        TLabel *Label11;

        TEdit *pole;

        void __fastcall sumaClick(TObject *Sender);

        void __fastcall roznicaClick(TObject *Sender);

        void __fastcall mnozenieClick(TObject *Sender);

        void __fastcall dzielenieClick(TObject *Sender);

        void __fastcall pole_kwadratuClick(TObject *Sender);

        void __fastcall pole_trojkataClick(TObject *Sender);

        void __fastcall pole_prostokataClick(TObject *Sender);

        void __fastcall infoDblClick(TObject *Sender);

        void __fastcall emailDblClick(TObject *Sender);

        void __fastcall btDblClick(TObject *Sender);

        void __fastcall dodawanieKeyDown(TObject *Sender, WORD &Key,

          TShiftState Shift);

private:	// User declarations

public: // User declarations

        __fastcall TForm1(TComponent* Owner);

};

//---------------------------------------------------------------------------

extern PACKAGE TForm1 *Form1;

//---------------------------------------------------------------------------

#endif

Plik itcalc.dfm

object Form1: TForm1

  Left = 778

  Top = 256

  Width = 391

  Height = 433

  Caption = 'IT Calc 3.0'

  Color = clSkyBlue

  TransparentColorValue = clBlue

  Font.Charset = DEFAULT_CHARSET

  Font.Color = clWindowText

  Font.Height = -11

  Font.Name = 'MS Sans Serif'

  Font.Style = []

  OldCreateOrder = False

  PixelsPerInch = 96

  TextHeight = 13

  object Label1: TLabel

    Left = 8

    Top = 72

    Width = 62

    Height = 16

    Caption = 'Liczba 1:'

    Font.Charset = DEFAULT_CHARSET

    Font.Color = clWindowText

    Font.Height = -13

    Font.Name = 'MS Sans Serif'

    Font.Style = [fsBold]

    ParentFont = False

  end

  object Label2: TLabel

    Left = 8

    Top = 96

    Width = 62

    Height = 16

    Caption = 'Liczba 2:'

    Font.Charset = DEFAULT_CHARSET

    Font.Color = clWindowText

    Font.Height = -13

    Font.Name = 'MS Sans Serif'

    Font.Style = [fsBold]

    ParentFont = False

  end

  object Label3: TLabel

    Left = 16

    Top = 152

    Width = 47

    Height = 16

    Caption = 'Wynik:'

    Font.Charset = DEFAULT_CHARSET

    Font.Color = clWindowText

    Font.Height = -13

    Font.Name = 'MS Sans Serif'

    Font.Style = [fsBold]

    ParentFont = False

  end

  object Label4: TLabel

    Left = 8

    Top = 8

    Width = 356

    Height = 24

    Caption = 'IT Calculator 3.0 ver. 02.01.2008 by JK'

    Font.Charset = DEFAULT_CHARSET

    Font.Color = clTeal

    Font.Height = -19

    Font.Name = 'MS Sans Serif'

    Font.Style = [fsBold]

    ParentFont = False

    OnDblClick = infoDblClick

  end

  object Label5: TLabel

    Left = 72

    Top = 48

    Width = 207

    Height = 20

    Caption = 'Proste dzia'#322'ania na liczbach'

    Font.Charset = DEFAULT_CHARSET

    Font.Color = clWindowText

    Font.Height = -16

    Font.Name = 'MS Sans Serif'

    Font.Style = []

    ParentFont = False

  end

  object Label6: TLabel

    Left = 96

    Top = 184

    Width = 151

    Height = 20

    Caption = 'Obliczanie pola figur'

    Font.Charset = DEFAULT_CHARSET

    Font.Color = clWindowText

    Font.Height = -16

    Font.Name = 'MS Sans Serif'

    Font.Style = []

    ParentFont = False

  end

  object Label7: TLabel

    Left = 32

    Top = 208

    Width = 40

    Height = 16

    Caption = 'Bok 1'

    Font.Charset = DEFAULT_CHARSET

    Font.Color = clWindowText

    Font.Height = -13

    Font.Name = 'MS Sans Serif'

    Font.Style = [fsBold]

    ParentFont = False

  end

  object Label8: TLabel

    Left = 32

    Top = 232

    Width = 36

    Height = 16

    Caption = 'Bok2'

    Font.Charset = DEFAULT_CHARSET

    Font.Color = clWindowText

    Font.Height = -13

    Font.Name = 'MS Sans Serif'

    Font.Style = [fsBold]

    ParentFont = False

  end

  object Label9: TLabel

    Left = 32

    Top = 296

    Width = 33

    Height = 16

    Caption = 'Pole'

    Font.Charset = DEFAULT_CHARSET

    Font.Color = clWindowText

    Font.Height = -13

    Font.Name = 'MS Sans Serif'

    Font.Style = [fsBold]

    ParentFont = False

  end

  object Label10: TLabel

    Left = 16

    Top = 336

    Width = 338

    Height = 16

    Caption = #169' 2007-2008 Copyright by J.K. All rights reserved.'

    Font.Charset = DEFAULT_CHARSET

    Font.Color = clWindowText

    Font.Height = -13

    Font.Name = 'MS Sans Serif'

    Font.Style = [fsBold]

    ParentFont = False

    OnDblClick = emailDblClick

  end

  object Label11: TLabel

    Left = 72

    Top = 360

    Width = 226

    Height = 16

    Caption = 'Beta testerzy: Milan, Radek i inni'

    Font.Charset = DEFAULT_CHARSET

    Font.Color = clWindowText

    Font.Height = -13

    Font.Name = 'MS Sans Serif'

    Font.Style = [fsBold]

    ParentFont = False

    OnDblClick = btDblClick

  end

  object suma: TButton

    Left = 8

    Top = 120

    Width = 75

    Height = 25

    Caption = 'Suma'

    TabOrder = 0

    OnClick = sumaClick

    OnKeyDown = dodawanieKeyDown

  end

  object liczba1: TEdit

    Left = 72

    Top = 72

    Width = 209

    Height = 21

    TabOrder = 1

  end

  object liczba2: TEdit

    Left = 72

    Top = 96

    Width = 209

    Height = 21

    TabOrder = 2

  end

  object wynik: TEdit

    Left = 72

    Top = 152

    Width = 209

    Height = 21

    TabOrder = 3

  end

  object roznica: TButton

    Left = 104

    Top = 120

    Width = 75

    Height = 25

    Caption = 'R'#243#380'nica'

    TabOrder = 4

    OnClick = roznicaClick

  end

  object mnozenie: TButton

    Left = 200

    Top = 120

    Width = 75

    Height = 25

    Caption = 'Mno'#380'enie'

    TabOrder = 5

    OnClick = mnozenieClick

  end

  object dzielenie: TButton

    Left = 296

    Top = 120

    Width = 75

    Height = 25

    Caption = 'Dzielenie'

    TabOrder = 6

    OnClick = dzielenieClick

  end

  object bok_1: TEdit

    Left = 72

    Top = 208

    Width = 209

    Height = 21

    TabOrder = 7

  end

  object bok_2: TEdit

    Left = 72

    Top = 232

    Width = 209

    Height = 21

    TabOrder = 8

  end

  object pole: TEdit

    Left = 72

    Top = 296

    Width = 209

    Height = 21

    TabOrder = 9

  end

  object pole_kwadratu: TButton

    Left = 24

    Top = 264

    Width = 89

    Height = 25

    Caption = 'Pole kwadratu'

    TabOrder = 10

    OnClick = pole_kwadratuClick

  end

  object pole_trojkata: TButton

    Left = 144

    Top = 264

    Width = 89

    Height = 25

    Caption = 'Pole tr'#243'jk'#261'ta'

    TabOrder = 11

    OnClick = pole_trojkataClick

  end

  object pole_prostokata: TButton

    Left = 264

    Top = 264

    Width = 89

    Height = 25

    Caption = 'Pole prostok'#261'ta'

    TabOrder = 12

    OnClick = pole_prostokataClick

  end

end

Plik itcalc8.cpp

//---------------------------------------------------------------------------


#include 

#pragma hdrstop


#include "itcalc8.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

        : TForm(Owner)

{


 liczba1->Text = 0;

 liczba2->Text = 0;

}

//---------------------------------------------------------------------------


void __fastcall TForm1::sumaClick(TObject *Sender)

{


  float x, y, z;


  x = StrToFloat(liczba1->Text);

  y = StrToFloat(liczba2->Text);


  z = x + y;


  wynik->Text = z;

}

//---------------------------------------------------------------------------

void __fastcall TForm1::roznicaClick(TObject *Sender)

{

  float z;

  z = StrToFloat(liczba1->Text) - StrToFloat(liczba2->Text);


  wynik->Text = z;

}

//---------------------------------------------------------------------------







void __fastcall TForm1::mnozenieClick(TObject *Sender)

{

 float x, y, z;


  x = StrToFloat(liczba1->Text);

  y = StrToFloat(liczba2->Text);


  z = x * y;


  wynik->Text = z;

}

//---------------------------------------------------------------------------


void __fastcall TForm1::dzielenieClick(TObject *Sender)

{

float x, y, z;


  x = StrToFloat(liczba1->Text);

  y = StrToFloat(liczba2->Text);


  z = x / y;


  wynik->Text = z;

}

//---------------------------------------------------------------------------


void __fastcall TForm1::pole_kwadratuClick(TObject *Sender)

{

float x, z;


  x = StrToFloat(bok_1->Text);


  z = x * x;


  pole->Text = z;

}

//---------------------------------------------------------------------------


void __fastcall TForm1::pole_trojkataClick(TObject *Sender)

{

float x, y, z;


  x = StrToFloat(bok_1->Text);

  y = StrToFloat(bok_2->Text);


  z = (x * y)/2;


  pole->Text = z;

}

//---------------------------------------------------------------------------


void __fastcall TForm1::pole_prostokataClick(TObject *Sender)

{

float x, y, z;


  x = StrToFloat(bok_1->Text);

  y = StrToFloat(bok_2->Text);


  z = x * y;


  pole->Text = z;

}

//---------------------------------------------------------------------------


void __fastcall TForm1::infoDblClick(TObject *Sender)

{

ShowMessage("Wersja programu : 3.0.0 z 2 Stycznia 2008 roku. Autor zastrzega sobie prawo do zmiany sposobu licenjonowania oraz dostarczania oprogramowania na zasadzie Open-Source");

}

//---------------------------------------------------------------------------


void __fastcall TForm1::emailDblClick(TObject *Sender)

{

ShowMessage("email:jonek29@wp.pl website: www.itforum.oz.pl");

}

//---------------------------------------------------------------------------


void __fastcall TForm1::btDblClick(TObject *Sender)

{

ShowMessage("Chcesz byc beta-testerem programu? Jeżeli tak to pisz: GG:9779373");        

}

//---------------------------------------------------------------------------


void __fastcall TForm1::dodawanieKeyDown(TObject *Sender, WORD &Key,

      TShiftState Shift)

{

ShowMessage("Wpisz 2 dowolne liczby w pola Liczba 1 i Liczba 2 po czym nacisnij przycisk Suma");

}

//---------------------------------------------------------------------------

To wszystkie pliki, pomóżcie, powiedzcie co może być nie tak, zależy mi na tym programie.


(Krzysiekaczor) #2

A jaki błąd wyskakuje bo nie mam pod ręką kompilatora :wink:


(Trance) #3

Ja mam ale to chyba nie wszystkie pliki z tego projektu.... najlepiej spakuj cały projekt i wrzuć go gdzieś


(Jonek29) #4

Co do błędu to właśnie kompilator go nie wyświetla, po prostu się zamyka.

A aplikacje spakowałem pliki i wrzuciłem w załącznik

[attachment=0]IT Calc.rar[/attachment]


(Trance) #5

ale nie ma tutaj moim zdaniem pliku z rozszerzeniem *bpr


(Jonek29) #6

no właśnie nie mam takiego pliku, a on jest potrzebny?


(Trance) #7

powiem tak z nim byłoby o wiele szybciej


(Jonek29) #8

OK problem rozwiązany przez Trance'a wielki plus dla niego. Złożył cały program i mi wysłał. dzięki bardzo :slight_smile: