Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.10.2015, 19:41   #1
KiselevKarl52
Новичок
Джуниор
 
Регистрация: 10.10.2015
Сообщений: 1
Вопрос Delphi. Последовательный вывод нажатых символов в Lable

Всем доброго времени суток.
Задали задание создать обычный калькулятор похожий на встроенный в Windows.
Вопрос в том, как сделать, чтобы знаки последовательно выводились в Label. К примеру:
Нажимаем на единицу (1), в label выводится единица, нажимаем плюс (+), он выводится следом за единицей 1+.... Так же выводим следующее число 1+2..., но дальше если мы еще раз нажимаем плюс (+), программа должна вывести 3+...
Если что то не понятно, спрашивайте, попытаюсь перефразировать
KiselevKarl52 вне форума Ответить с цитированием
Старый 11.10.2015, 17:24   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Могу с потолка предложить такое:
Код:
unit Unit1;

{$mode objfpc}{$H+}

interface

uses
      Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;

type

			{ TForm1 }

      TForm1 = class(TForm)
						Label1: TLabel;
						procedure FormClose(Sender: TObject; var CloseAction: TCloseAction);
      procedure FormCreate(Sender: TObject);
						procedure FormKeyPress(Sender: TObject; var Key: char);
      private
            { private declarations }
      public
            { public declarations }
      end;

var   s:double; st:TStringList;  kl:char;
      Form1: TForm1;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.FormCreate(Sender: TObject);
begin
      KeyPreview:=true;
      Label1.Align:=alClient;
      s:=0;
      st:=TStringList.Create;
      Label1.Caption:='';
end;

procedure TForm1.FormClose(Sender: TObject; var CloseAction: TCloseAction);
begin
      st.Free;
end;

procedure TForm1.FormKeyPress(Sender: TObject; var Key: char);
var i:integer;
begin
  if key in ['+','-'] then begin
    if key='-' then i:=-1 else i:=1;
    st.Delimiter:=kl; kl:=key;
    st.DelimitedText:=Label1.Caption;
    if st.Count=2 then begin
     s:=StrToFloatDef(st[0],0)+StrToFloatDef(st[1],0)*i;
     Label1.Caption:=FloatToStr(s)+key;
		end else
    Label1.Caption:=Label1.Caption+key;
	end else
  Label1.Caption:=Label1.Caption+key;
end;

end.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.10.2015, 18:57   #3
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

большая ссылка
для автора вопроса и для остальных калькуляторописателей.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 12.10.2015, 10:02   #4
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Цитата:
Delphi. ... Lable
Посоны из Borland (Embarcadero) нервно икнули.
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 12.10.2015, 10:21   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Посоны из Borland (Embarcadero) нервно икнули.
Скажи спасибо, что в конце буква "е" а не "я". Посоны из эмбаркадырки бы просто огнебизяной подавились ))
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Delphi - Как сделать вывод символов из memo в StringGrid? Alibaba.bu Помощь студентам 3 20.06.2015 18:50
Вывод на экран символов дельта и сигма (Delphi) Alfik Помощь студентам 12 19.10.2014 10:05
вывод информации о нажатых клавишах rinaty17 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 06.12.2011 17:21
Вывод спец. символов в строку. Delphi Horus92 Помощь студентам 2 27.08.2010 08:54
Вывод символов в StringGrid спиралью и змейкой (Delphi) ekzobyte Помощь студентам 1 02.04.2009 19:34