Модераторы: Snowy, MetalFan, bems, Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Форма ввода в массив записей переменной длины 
:(
    Опции темы
Rasool
Дата 20.10.2015, 17:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 4.6.2011

Репутация: нет
Всего: нет



Решил спросить совета у форумского разума. Есть массив TRadiusArray записей TEditRadius переменной длины  (может быть от 5 до 50 записей) (длина массива указывается в специальном поле ввода в родительской форме), нужно сделать отдельную формочку для ввода данных туда, вызываемую при нажатии кнопки на форме. Что лучше использовать? ListView? Массив из полей ввода с ползунком справа? Или еще что?
unit EditRadiuses;

Код

type

    TEditRadius = record
        Value: Double; // Значение радиуса
        TolMinus: Double; // Допуск-
        TolPlus: Double; // Допуск+
        Coord: Double; // Координата сечения
    end;

    TRadiusArray = Array of TEditRadius;

    TEditRadiusesForm = class(TForm)
    private
        { Private declarations }
    public
        { Public declarations }
        Kromka: TRadiusArray;
    end;

var
    EditRadiusesForm: TEditRadiusesForm;


Код

unit Bazir;

type
    TfrmBazir = class(TForm)
    public
        VhodKromka: TRadiusArray; // Задаваемые массив радиусов входной кромки
        VyhodKromka: TRadiusArray; // Задаваемые массив радиусов выходной кромки

implementation

procedure TfrmBazir.ButtonEditRadiuses(Sender: TObject);
var
    vh1: TEditRadius;
begin
    if (ChooseSurf.Items[ChooseSurf.ItemIndex] <> 'Входная кромка') and
        (ChooseSurf.Items[ChooseSurf.ItemIndex] <> 'Выходная кромка') then
        exit;
    if not Assigned(EditRadiusesForm) then
        EditRadiusesForm := TEditRadiusesForm.Create(self);

    if (ChooseSurf.Items[ChooseSurf.ItemIndex] = 'Входная кромка') then
        EditRadiusesForm.Kromka := VhodKromka;
    if (ChooseSurf.Items[ChooseSurf.ItemIndex] = 'Выходная кромка') then
        EditRadiusesForm.Kromka := VyhodKromka;

    EditRadiusesForm.ShowModalAndDoAction(Sender);
end;


Присоединённый файл ( Кол-во скачиваний: 6 )
Присоединённый файл  Vvod.JPG 12,89 Kb
PM MAIL   Вверх
Poseidon
Дата 21.10.2015, 11:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 9
Всего: 133



Цитата(Rasool @  20.10.2015,  17:19 Найти цитируемый пост)
Что лучше использовать? ListView? Массив из полей ввода с ползунком справа?
Тут уже на персональное усмотрение. Лично я бы не стал заморачиваться на динамическом создании полей ввода, расчета их координат на форме и т.п. Лучше использовать какой-нибудь компонент-таблицу.



--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0404 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.