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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.11.2012, 14:30   #1
Kristina_1
 
Регистрация: 11.11.2012
Сообщений: 6
Радость Создание формы в режиме run-time

Здравствуйте.
Лазарус изучаю не больше недели. До этого ничего кроме си++ не знала. Очень нужна ваша помощь.Есть форма, на ней две кнопки. Первая создает приложение в в design-time, а вторая тоже самое но в run-time.Настройки хранятся в ini файле С design-time я разобралась, а вот с run-time не понятно. Что значит "описать ссылки на компоненты" ? Как это ? как ими после пользоваться? Что бы разобраться мне бы хватило примерчика....например с Label? как его создать в динамическом режиме? помогите
Kristina_1 вне форума Ответить с цитированием
Старый 11.11.2012, 16:12   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Первая создает приложение в в design-time, а вторая тоже самое но в run-time.
Приложение??? Может быть форму?
Цитата:
Настройки хранятся в ini файле
Какого рода настройки? Приведи пример.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.11.2012, 21:22   #3
Kristina_1
 
Регистрация: 11.11.2012
Сообщений: 6
По умолчанию

Да, форму, не приложение...
пример ини файла
[LABEL_1]
Color=41120
Alignment=0
Size=12
Name='Monotype Corsiva'

[LABEL_2]
Color=16776960
Alignment=0
Size=12
Name='Monotype Corsiva'
....
Kristina_1 вне форума Ответить с цитированием
Старый 13.11.2012, 21:36   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Как пример:
Код:
unit Unit1;

{$mode objfpc}{$H+}

interface

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

type

  { TForm1 }

  TForm1 = class(TForm)
    Label1: TLabel;
    procedure FormCreate(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.FormCreate(Sender: TObject);
var sec:TStringList;i:integer;l:TLabel;
begin
  with TIniFile.Create(ExtractFilePath(ParamStr(0))+'q.ini') do begin
   sec:=TStringList.Create;
    ReadSections(sec);
    for i:=0 to sec.Count-1 do begin
      l:=TLabel.Create(self);
      l.Caption:=ReadString(sec[i],'Name','');
      l.Color:=ReadInteger(sec[i],'Color',clDefault);
      l.AutoSize:=true;
      l.Parent:=self;
      l.Show;
    end;
   sec.Free;
   Free;;
  end;
end;

end.
Есть варианты посложнее, но поэффективнее, однако твой ини файл под них не очень подходит.
Сам файл q.ini положи возле экзешника.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.11.2012, 23:14   #5
Kristina_1
 
Регистрация: 11.11.2012
Сообщений: 6
По умолчанию

По этому коду ничего на созданной форме не отображается...(
Kristina_1 вне форума Ответить с цитированием
Старый 14.11.2012, 13:19   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Это не значит что код неправильный )
Я не с потолка его писал, а проверял в Лазаре, так что что-то делаешь не так ты.
Вполне возможно что ты тупо скопипастила код, даже не подключив события - типичная ошибка novice.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.11.2012, 20:04   #7
Kristina_1
 
Регистрация: 11.11.2012
Сообщений: 6
По умолчанию

Что значит подключить события? Добавить в uses модули?

Или там где события,выбрать onCreate ввести название процедуры?
Все сделано. Пустая по прежнему..(

Последний раз редактировалось Stilet; 14.11.2012 в 21:36.
Kristina_1 вне форума Ответить с цитированием
Старый 14.11.2012, 20:44   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Нет. В проектировании в инспекторе объектов создать событие см. скрин.
Тогда Лазарь сформирует шаблон обработчика события, где и можно написать код.
Вообще если ты еще не познакомилась с понятием свойств и событий то рекомендую срочно это сделать, иначе ты ничего написать толком не сможешь, ни единой оконной программы, и не только в Лазаре.

Цитата:
Все сделано.
Точно? Шаблон обработчика создался? Ты в него код поместила?
Изображения
Тип файла: png Безымянный.png (24.4 Кб, 52 просмотров)
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.11.2012, 21:01   #9
Kristina_1
 
Регистрация: 11.11.2012
Сообщений: 6
По умолчанию

Да! Это сделала. Ничего не изменилось.



Вот.все как говорите
Изображения
Тип файла: jpg jjjjjjjj.jpg (33.9 Кб, 129 просмотров)

Последний раз редактировалось Stilet; 14.11.2012 в 21:32.
Kristina_1 вне форума Ответить с цитированием
Старый 14.11.2012, 21:31   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Не понял... И что не работает?
можешь проект заархивировать и приаттачить сюда?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание TImage в Run-time mrbadge Помощь студентам 9 03.02.2011 22:48
[Delphi] Работа с компонентом TButton в режиме run-time Rydj Помощь студентам 17 29.01.2011 15:56
Создание компонентов Run Time Serebah Общие вопросы Delphi 13 08.12.2010 22:02
управление компонентами в режиме run-time. KrisPipis Помощь студентам 3 08.12.2010 01:11
При создание edit, в режиме run-time, нет стандартного контекстного меню slips Общие вопросы Delphi 6 08.11.2008 17:05