Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 12.05.2012, 17:16
anna-a anna-a вне форума
Прохожий
 
Регистрация: 09.05.2012
Сообщения: 1
Репутация: 10
По умолчанию Помогите найти проблему в проге!

Необходимо чтобы программа показывала какое-либо сообщение об ошибке, если в поле значение введены символы или буквы. Язык делфи
код программы
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, jpeg, Menus, Buttons;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    ComboBox1: TComboBox;
    ComboBox2: TComboBox;
    Edit2: TEdit;
    MainMenu1: TMainMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    N4: TMenuItem;
    Image1: TImage;
    Image2: TImage;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label3: TLabel;
    Label1: TLabel;
    Label2: TLabel;
    Label9: TLabel;
    PopupMenu1: TPopupMenu;
    N5: TMenuItem;
    N6: TMenuItem;
    N7: TMenuItem;
    procedure N2Click(Sender: TObject);
    procedure N4Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure N5Click(Sender: TObject);
    procedure N6Click(Sender: TObject);
    procedure N7Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1; S,Y,I:Extended;

implementation

{$R *.dfm}

procedure TForm1.N2Click(Sender: TObject);
begin
CLOSE ;
end;

procedure TForm1.N4Click(Sender: TObject);
begin
ShowMessage('Программа конвертации мер массы.'
             +#13#10+'Версия 1.00.0'
             +#13#10+'Автор:Борискина Анна');
end;



procedure TForm1.BitBtn1Click(Sender: TObject);
begin
I:=StrToFloat(Edit1.Text);
IF combobox1.Text='Килограмм' THEN Y:=I*1;
IF combobox1.Text='Грамм' THEN Y:=I*0.001;
IF combobox1.Text='Тонна' THEN Y:=I*1000;
IF combobox1.Text='Милиграмм' THEN Y:=I*0.000001;
IF combobox1.Text='Фунт' THEN Y:=I*0.45359237;
IF combobox1.Text='Гран' THEN Y:=I*0.00006479891;
IF combobox1.Text='Унция' THEN Y:=I*0.0283495231;

IF combobox2.Text='Килограмм' THEN S:=Y/1;
IF combobox2.Text='Грамм' THEN S:=Y/0.001;
IF combobox2.Text='Тонна' THEN S:=Y/1000;
IF combobox2.Text='Милиграмм' THEN S:=Y/0.000001;
IF combobox2.Text='Фунт' THEN S:=Y/0.45359237;
IF combobox2.Text='Гран' THEN S:=Y/0.00006479891;
IF combobox2.Text='Унция' THEN S:=Y/0.0283495231;

Edit2.Text:=FloatToStr(S);
Label9.Caption:=combobox2.Text;
//ShowMessage(combobox1.Text);
end;


procedure TForm1.BitBtn3Click(Sender: TObject);
begin
close;
end;

procedure TForm1.BitBtn2Click(Sender: TObject);
begin
ShowMessage('Программа конвертации мер массы.'
             +#13#10+'Версия 1.00.0'
             +#13#10+'Автор:Борискина Анна');
end;

procedure TForm1.N5Click(Sender: TObject);
begin
I:=StrToFloat(Edit1.Text);
IF combobox1.Text='Килограмм' THEN Y:=I*1;
IF combobox1.Text='Грамм' THEN Y:=I*0.001;
IF combobox1.Text='Тонна' THEN Y:=I*1000;
IF combobox1.Text='Милиграмм' THEN Y:=I*0.000001;
IF combobox1.Text='Фунт' THEN Y:=I*0.45359237;
IF combobox1.Text='Гран' THEN Y:=I*0.00006479891;
IF combobox1.Text='Унция' THEN Y:=I*0.0283495231;

IF combobox2.Text='Килограмм' THEN S:=Y/1;
IF combobox2.Text='Грамм' THEN S:=Y/0.001;
IF combobox2.Text='Тонна' THEN S:=Y/1000;
IF combobox2.Text='Милиграмм' THEN S:=Y/0.000001;
IF combobox2.Text='Фунт' THEN S:=Y/0.45359237;
IF combobox2.Text='Гран' THEN S:=Y/0.00006479891;
IF combobox2.Text='Унция' THEN S:=Y/0.0283495231;

Edit2.Text:=FloatToStr(S);
Label9.Caption:=combobox2.Text;
//ShowMessage(combobox1.Text);
end;

procedure TForm1.N6Click(Sender: TObject);
begin
ShowMessage('Программа конвертации мер массы.'
             +#13#10+'Версия 1.00.0'
             +#13#10+'Автор:Борискина Анна');
end;

procedure TForm1.N7Click(Sender: TObject);
begin
close;
end;

end.

Когда пишу
Код:
begin 
try
I:=StrToFloat(Edit1.Text);
except
ShowMessage('Неверный ввод значения');
end;

дальше выдает ошибки на все procedure
Как решить проблему? помогите((

Последний раз редактировалось anna-a, 12.05.2012 в 17:25.
Ответить с цитированием
  #2  
Старый 12.05.2012, 17:34
Аватар для cotseec
cotseec cotseec вне форума
Активный
 
Регистрация: 16.07.2008
Сообщения: 353
Версия Delphi: D7,TDE06,RAD09
Репутация: 1443
По умолчанию

если правильно понимаю
Цитата:
дальше выдает ошибки на все procedure

запускать не из-под IDE (скомпилировать, свернуть IDE, найти экзешник, запустить, протестировать) или лезть в настройки IDE и настраивать обработку ошибок, что не рекомендую

еще можно использовать StrToFloatDef
Ответить с цитированием
  #3  
Старый 12.05.2012, 17:48
Аватар для v1s2222
v1s2222 v1s2222 вне форума
Продвинутый
 
Регистрация: 07.09.2010
Сообщения: 726
Репутация: 26711
По умолчанию

Цитата:
Сообщение от anna-a
Когда пишу
Код:
begin 
try
I:=StrToFloat(Edit1.Text);
except
ShowMessage('Неверный ввод значения');
end;

дальше выдает ошибки на все procedure
Как решить проблему? помогите((
Я так понимаю, ошибка "Statement expected but 'PROCEDURE' found"?
Если да, то в Вашем случае не хватает end 'a.
__________________
Помогаю за Спасибо
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 07:27.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter