Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Delphi, Kylix and Pascal


Ответ
 
Опции темы Опции просмотра
Старый 21.10.2012, 15:13   #1 (permalink)
amki6
Новичок
 
Регистрация: 21.10.2012
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Помогите доделать программу

Обработка записей
Задание состоит в том, что нужно с помощью ComboBox так же как и название и цену и возраст добавлять в саму запись. А потом с помощью кнопки показывать игрушки выбранной категории. А как это сделать не понимаю, в книжке по корой я это делаю ни чего нет. Если можно написать код который должен получиться.
Не знаю как сделать что бы считывалась значение с ComboBox, и как занести сами категории там мягкие игрушки и так далее, точнее куда их надо записать. Во все остальном же мы сами вводим значение, а тут нужно выбрать из заранее подготовленного списка категории игрушек вот это я и не пойму
И там еще кнопку надо сделать если можно то и это еще обяснить
Вложения
Тип файла: zip Unit1.zip (6.0 Кб, 10 просмотров)
amki6 вне форума   Ответить с цитированием

Старый 21.10.2012, 15:13
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Ваш вопрос уже обсуждался на нашем форуме

Помогите доделать программу на C++, пожалуйста!
Множества. Помогите доделать программу
Помогите доделать задачу в С++
Помогите доделать код
Помогите доделать
Pascal ABC, помогите доделать

Старый 21.10.2012, 16:43   #2 (permalink)
XELFAER
Member
 
Аватар для XELFAER
 
Регистрация: 22.07.2012
Сообщений: 393
Записей в дневнике: 2
Сказал(а) спасибо: 95
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 5501
По умолчанию

если правильно понял:
В свойствах компонента ComboBox1 вкладки Properties есть поле Items где вносите необходимые поля для раскрывающегося списка.

потом обращаетесь к полю примерно так:

procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
kat:string;
begin
inc(n);
with mas[n] do begin
nazv:=edit1.Text;
cena:=StrToInt(edit2.Text);
vozrOt:=strtoInt(edit3.Text);
vozrDo:=strtoInt(edit4.text);
kat:= ComboBox1.Text;
memo1.Clear;
if (edit2.Text='')or(edit3.Text='')or(edit4.Text='') or (edit5.text='')then
begin
cena:=0;
vozrOt:=1;
vozrDo:=1;
end
else
for i := 1 to n do with mas[i] do begin
memo1.Lines.Add('Наименование - '+nazv);
memo1.Lines.Add('Наименование - '+kat);
end;

end;
end;
XELFAER вне форума   Ответить с цитированием
Старый 21.10.2012, 17:38   #3 (permalink)
amki6
Новичок
 
Регистрация: 21.10.2012
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

а как сделать кнопку что бы при выборе категории он выводил игрушки данной категории?? ну как он это делает с выбором по возрасту и 2 другими кнопками?
amki6 вне форума   Ответить с цитированием
Старый 21.10.2012, 19:49   #4 (permalink)
XELFAER
Member
 
Аватар для XELFAER
 
Регистрация: 22.07.2012
Сообщений: 393
Записей в дневнике: 2
Сказал(а) спасибо: 95
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 5501
По умолчанию

Цитата:
Сообщение от amki6 Посмотреть сообщение
а как сделать кнопку что бы при выборе категории он выводил игрушки данной категории?? ну как он это делает с выбором по возрасту и 2 другими кнопками?
немного тяжело понять что именно требуется. Напишите условие или ТЗ к примеру.
XELFAER вне форума   Ответить с цитированием
Старый 21.10.2012, 19:56   #5 (permalink)
amki6
Новичок
 
Регистрация: 21.10.2012
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

ну у нас даны к примеру три категории "мягкие", "настольные" и "развивающие" игрушки. Нужно сделать кнопку при нажатии которой выбранная нами категория в выплывающем списке выводила в Memo1 все игрушки данной категории.
amki6 вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 21.10.2012, 21:14   #6 (permalink)
XELFAER
Member
 
Аватар для XELFAER
 
Регистрация: 22.07.2012
Сообщений: 393
Записей в дневнике: 2
Сказал(а) спасибо: 95
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 5501
По умолчанию

категория игрушки должна быть сделана раскрывающимся списком?
XELFAER вне форума   Ответить с цитированием
Старый 21.10.2012, 22:35   #7 (permalink)
amki6
Новичок
 
Регистрация: 21.10.2012
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Мне нужна кнопка при нажатии которой выводится список игрушек выбранной категории я не знаю как это лучше сделать. Делать отдельное окно где водиться категория или использовать выплывающий список(Combobox).И вообще не понимаю как это сделать. Мне дали доп. задание. Сказали добавить категории и кнопку по которой отбираются игрушки выбранной категории!!! Все ни каких уточнений больше не было.
Миниатюры
1.png  
amki6 вне форума   Ответить с цитированием
Старый 22.10.2012, 20:55   #8 (permalink)
amki6
Новичок
 
Регистрация: 21.10.2012
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию не знаю как сделать

Мне нужна кнопка при нажатии которой выводится список игрушек выбранной категории я не знаю как это лучше сделать. Делать отдельное окно где водиться категория или использовать выплывающий список(Combobox).И вообще не понимаю как это сделать. Мне дали доп. задание. Сказали добавить категории и кнопку по которой отбираются игрушки выбранной категории!!! Все ни каких уточнений больше не было.

Вот сам код программы
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Edit1: TEdit; //Название
Label1: TLabel;
Edit2: TEdit; //Цена
Label2: TLabel;
Label3: TLabel;
Edit3: TEdit; //Возраст ОТ
Label4: TLabel;
Edit4: TEdit; //Возраст До
Button1: TButton;
Button2: TButton;
Button3: TButton;
Memo1: TMemo;
Button4: TButton;
Button5: TButton;
ComboBox1: TComboBox;
Label5: TLabel;
Button6: TButton;
procedure Button6Click(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}
Type
igrushka=record
nazv:string;
kat:string;
cena:integer;
vozrOt:1..16;
vozrDo:1..16;
end;
cоnst nmax=50; //Максимальное число записей
var
n:integer; //число игрушек
mas:array[1..nmax] of igrushka;

procedure TForm1.FormCreate(Sender: TObject);
begin
n:=0;
memo1.Clear;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
begin
inc(n);
with mas[n] do begin
nazv:=edit1.Text;
cena:=StrToInt(edit2.Text);
vozrOt:=strtoInt(edit3.Text);
vozrDo:=strtoInt(edit4.text);
kat:= ComboBox1.Text;

memo1.Clear;
if (edit2.Text='')or(edit3.Text='')or( edit4.Text='') then
begin
cena:=0;
vozrOt:=1;
vozrDo:=1;
end
else
for i := 1 to n do with mas do begin
memo1.Lines.Add('Наименование - '+nazv);
memo1.Lines.Add('Категория - '+kat);
end;

end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
n:=0;
edit1.Clear;
edit2.Clear;
edit3.Clear;
edit4.clear;
edit4.clear;
memo1.Clear;
edit1.SetFocus;
end;

procedure TForm1.Button3Click(Sender: TObject);
var
i,stoim:integer;

begin
stoim:=strtoint(edit2.Text);
memo1.clear;
for I := 1 to n do
if mas.cena<stoim>.nazv);
memo1.Lines.add('С ценой - '+inttostr(mas.cena));
memo1.lines.add('');
end;
end;

procedure TForm1.Button4Click(Sender: TObject);
var i,imax:integer;
cmax:integer;
{nazvanie:string; }
begin
memo1.clear;
i:=1;
cmax:=mas.cena;
for I := 1 to n do begin
if cmax<mas<i>.cena>.cena;
imax:=i;
end;
end;
memo1.Lines.add('Максимальная цена = '+inttostr(cmax));
memo1.Lines.Add('Игрушка - '+mas[imax].nazv);
end;

procedure TForm1.Button5Click(Sender: TObject);
var i,vot,vdo:integer;
begin
memo1.Clear;
vot:=strtoint(edit3.text);
vdo:=strtoint(edit4.text);
memo1.Lines.Add('игрушки для возраста от '+inttostr(vot)+' до '+inttostr(vdo));
for I := 1 to n do begin
if ((mas.vozrOt)>=vot)and((mas.vozrDo) <=vdo) then
begin
memo1.Lines.add(mas.nazv+' - '+inttostr(mas.cena));
end;
end;

end;

procedure TForm1.Button6Click(Sender: TObject);

begin

end;

procedure TForm1.ComboBox1Change(Sender: TObject);
begin

end;

end.
Замечание:
Если будете со своей задачей лезть в чужие темы - забаню к чертовой матери! У Вас есть своя тема по этой задаче, вот в нее и пишите!
Сообщение из чужой темы перенесено сюда.

Модератор.
amki6 вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 17:52.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.