Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.04.22;
Скачать: [xml.tar.bz2];

Вниз

*.my   Найти похожие ветки 

 
Rooot   (2007-04-03 15:18) [0]

Как создать файл своего собственного формата.?


 
Плохиш ©   (2007-04-03 15:20) [1]

CreateFile


 
Сергей М. ©   (2007-04-03 15:21) [2]

TFileStream.Create("Файл.МоегоСобственногоФормата", fmCreate).Free;


 
Rooot   (2007-04-03 15:22) [3]


> Плохиш ©   (03.04.07 15:20) [1]

А как скажем туда объект записать...


 
Сергей М. ©   (2007-04-03 15:24) [4]


> А как .. туда объект записать


Известно как - в "своем собственном формате"


 
{RASkov}   (2007-04-03 15:38) [5]

> Как создать файл своего собственного формата.?

А чем собственно отличается создание файла твоего собственного формата от создания файла моего собственного формата?

> А как скажем туда объект записать...

Конкретно как, наверное все-таки, завист от формата...


 
Desdechado ©   (2007-04-03 16:10) [6]

и от того, что есть "объект"


 
SergeR ©   (2007-04-03 16:16) [7]

Что то подобное в орешнике было....


 
Elen ©   (2007-04-03 17:15) [8]


> А как скажем туда объект записать...

Получить список свойств такого-то обьекта (если имеется ввиду типа TForm или другие делфийские объекты) и записать этот список в файл.

Вот из DelphiWorld получение списка свойств:

unit Unit1;

interface

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

type
 TForm1 = class(TForm)
   ListBox1: TListBox;
   Button1: TButton;
   procedure FormCreate(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}
procedure ListComponentProperties(Component: TComponent; Strings: TStrings);
var
  Count, Size, I: Integer;
  List: PPropList;
  PropInfo: PPropInfo;
  PropOrEvent, PropValue: string;
begin
  Count := GetPropList(Component.ClassInfo, tkAny, nil);
  Size  := Count * SizeOf(Pointer);
  GetMem(List, Size);
  try
    Count := GetPropList(Component.ClassInfo, tkAny, List);
    for I := 0 to Count - 1 do
    begin
      PropInfo := List^[I];
      if PropInfo^.PropType^.Kind in tkMethods then
        PropOrEvent := "Event"
      else
        PropOrEvent := "Property";
      PropValue := VarToStr(GetPropValue(Component, PropInfo^.Name));
      Strings.Add(Format("[%s] %s: %s = %s", [PropOrEvent, PropInfo^.Name,
        PropInfo^.PropType^.Name, PropValue]));
    end;
  finally
    FreeMem(List);
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);

begin
ListComponentProperties(form1, ListBox1.Items);

end;

end.


 
Игорь Шевченко ©   (2007-04-03 17:38) [9]

Elen ©   (03.04.07 17:15) [8]

Опять мимо. Матчасть учить. TStream.WriteComponent


 
Elen ©   (2007-04-03 17:42) [10]


> Игорь Шевченко ©   (03.04.07 17:38) [9]

А если я не все свойства хочу сохранить? Если выборочно скажем первые 20 штук? И к тому же полезно иметь на руках список свойств, а про WriteComponent я знаю, но альтернатива никогда не помешает :)


 
{RASkov}   (2007-04-03 17:45) [11]

> А если я не все свойства хочу сохранить? Если выборочно
> скажем первые 20 штук?

Как это и [8] связано с

> Как создать файл своего собственного формата.?

? :)


 
Игорь Шевченко ©   (2007-04-03 22:07) [12]

Elen ©   (03.04.07 17:42) [10]


> А если я не все свойства хочу сохранить? Если выборочно
> скажем первые 20 штук? И к тому же полезно иметь на руках
> список свойств


А если вопрос почитать ? Или не судьба, а знанием поделиться хочется ?


 
Elen ©   (2007-04-04 08:12) [13]


> А если вопрос почитать ?

А ты сам почитай - [3] "А как скажем туда объект записать...", т.е. автору нужно скинуть в файл значения свойств обьекта, а вопрос про формат немножко непонятный



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.04.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.044 c
15-1174857652
eXPell
2007-03-26 01:20
2007.04.22
Последнее за выходные....


2-1175715209
Чаййник
2007-04-04 23:33
2007.04.22
запус по времени


2-1175682244
Officeman
2007-04-04 14:24
2007.04.22
Цветные делений в ProgressBar1


2-1175254671
webpauk
2007-03-30 15:37
2007.04.22
Обращение к классу


15-1175077376
atruhin
2007-03-28 14:22
2007.04.22
Как перенести данные Outlook 2003





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский