Недавно добавленные исходники

•  Animation Loaders  648

•  DeLiKaTeS Tetris (Тетрис)  5 660

•  TDictionary Custom Sort  7 622

•  Fast Watermark Sources  7 311

•  3D Designer  10 510

•  Sik Screen Capture  7 830

•  Patch Maker  8 058

•  Айболит (remote control)  8 115

•  ListBox Drag & Drop  6 922

•  Доска для игры Реверси  100 067

•  Графические эффекты  8 181

•  Рисование по маске  7 579

•  Перетаскивание изображений  6 181

•  Canvas Drawing  6 547

•  Рисование Луны  6 475

•  Поворот изображения  5 656

•  Рисование стержней  4 577

•  Paint on Shape  3 282

•  Генератор кроссвордов  4 267

•  Головоломка Paletto  3 403

•  Теорема Монжа об окружностях  4 228

•  Пазл Numbrix  2 744

•  Заборы и коммивояжеры  3 644

•  Игра HIP  2 450

•  Игра Go (Го)  2 433

•  Симулятор лифта  2 841

•  Программа укладки плитки  2 283

•  Генератор лабиринта  2 996

•  Проверка числового ввода  2 505

•  HEX View  2 903

 
скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Сохранить несколько контролов в один файл




{ 
 -> Question: 
 How can I store some TRichEdit components and TEdit Components in a single file? 

 -> Answer: 
 Use a filestream and a reader or writer object. 
 These ease the tasks of writing strings to a binary stream and reading them back. 
} 

{ 
 -> Frage: 
 Wie kann ich den Inhalt einiger TRichEdit und TEdit Komponenten in einer einzigen 
 Datei  speichern? 

 -> Antwort: 
 Verwende einen FileStraem und ein Reader/Writer Objekt. 
 Damit kann man leicht strings in einen binдren Stream speichern und zurьcklesen. 
} 

// Save routine 
// Speichern Routine 
procedure SaveEditcontrols(const FileName: string; const Controls: array of TCustomEdit); 
var 
  fs: TFilestream; 
  writer: TWriter; 
  i: Integer; 
  ss: TStringstream; 
begin 
  fs := TFilestream.Create(FileName, fmCreate); 
  try 
    writer := TWriter.Create(fs, 4096); 
    try 
      for i := Low(Controls) to High(Controls) do 
        if Controls[i] is TCustomRichedit then  
        begin 
          ss := TStringstream.Create(EmptyStr); 
          try 
            with TRichedit(Controls[i]) do  
            begin 
              Plaintext := False; 
              Lines.SaveToStream(ss); 
            end; 
            writer.WriteString(ss.Datastring); 
          finally 
            ss.Free; 
          end; 
        end 
      else 
        writer.WriteString(Controls[i].Text); 
    finally 
      writer.Free; 
    end; 
  finally 
    fs.Free; 
  end; 
end; 

// Load routine 
// Lade Routine 
procedure LoadEditcontrols(const FileName: string; const Controls: array of TCustomEdit); 
var 
  fs: TFilestream; 
  reader: Treader; 
  i: Integer; 
  ss: TStringstream; 
begin 
  fs := TFilestream.Create(FileName, fmOpenread or fmShareDenyWrite); 
  try 
    reader := Treader.Create(fs, 4096); 
    try 
      for i := Low(Controls) to High(Controls) do 
        if Controls[i] is TCustomRichedit then  
        begin 
          ss := TStringstream.Create(reader.ReadString); 
          try 
            with TRichedit(Controls[i]) do  
            begin 
              Plaintext := False; 
              Lines.LoadfromStream(ss); 
            end; 
          finally 
            ss.Free; 
          end; 
        end 
      else 
        Controls[i].Text := reader.ReadString; 
    finally 
      reader.Free; 
    end; 
  finally 
    fs.Free; 
  end; 
end; 

// Example to store 2 TRichEdits and 3 Edit Controls to one file 
// Beispiel, um  3 TRichEdits und 3 TEdit Controls in einer Datei zu speichern 

procedure TForm1.Button1Click(Sender: TObject); 
begin 
  SaveEditControls('C:\temp\temp.dat', 
    [richedit1, richedit2, edit1, edit2, edit3]); 
end;





Похожие по теме исходники

Чтение PSD файлов

Шифратор файлов

Разбиение файла на части

Поиск файлов

 

FileMan (менеджер файлов)

Поиск открытых файлов

Текст внутри файла




Copyright © 2004-2026 "Delphi Sources" by «SiteAnalyzer». Delphi World FAQ

Группа ВКонтакте