| Программирование под linux, программирование, языки программирования, книги программирование | На сайте представлена информация про программирование в Интернете и работу |
|
Немогу соединиться с MS SQL, из Delphi7 сохранение DBGridEh в SQL-таблице, Караул!! Oracle+1c, связать две сущности SQL connection timed out, Проблема Как узнать ID? SQL запрос из MS SQL, update/insert/delete Отчеты, 2 страницы вычисляемое поле в датасете TMyDataSet = class(TDataset), помогите с реализацией Обновление БД ACCESS Выделить границы ячейки Excel через Delphi!!! База данных в Access с нуля Грамотно удалить все записи в ADO таблице ADO и QReport, как связаться с Аксессом??? TQuery или TTable?, что быстрее удалить файлы по маске, с одинаковым расширением Как Вы относитесь к курящим девушкам? Delphi 2005 и DataType=DataSet, Отображение поля типа DataSet в Grid Формула в поле таблицы Помогите с базой данных, Помогите начинающему програмисту Как после KILL оповестите клиента, MySQL Правая кнопка мыши Функции, Разрешение проблемы Установка цвета записи в DBGrid Как распечатать базу данных?, есть реляционная бд... Как из ADOQuery'ков перенести информацию в Excel? Как разорвать соединение Btrieve, кто с ним работал ?, базы данных Btrieve под Delphi 6 и выше Создание сетевых многопользовательских приложений, С чего начать? Ищу движок DB для небольшой Shareware программы, С Поддержкой SQL и простой в использов. Работа с MySQL, компонент Zeos DBO 6.5.1 a окно с паролем, ODBC Paradox 7.0, проблемка возникла Footer из DBGridEh Как программно подключить базу данных dBase создание таблицы в Access, Помогите!! Проблема с типом Comp Файлы в ListView со значками., Нужен пример! Косяк с DISTINCT, меняет местами строки Сортировка по LookUp полю! работа с переменными в FR3, как присвоить значение переменной отчета Работа с датой Как работать с компонетами Запрос на удаление, Помогите написать запрос (BDE/Paradox): вопрос по ADOTable вообщем по БД Как включить, отключить в Scroll DBGrid Как обновлять возраст по дате рождения в БД Умножение значений двух полей, Высчитывает значение = 0 Окно с вопросом, Да Нет ? Работа с полями типа bigint программно навети фокус на ячейку DBGrid Продлема с выводом в DBGrid Увеличение времени выполнения, Почему? Сохранить изменения в DBGrid/DBGridEh Login Local server, Как подключить? Установка BDE для бд Paradox, Как установить BDE? TDBComboBox, Немного переписать TDBComboBox как в DBGrid изменить значение всех ячеек Лишние пробелы после значения поля при, использовании MSSQLServer2000. Как убрат Autodesk MapGuide, Программирование в Autodesk MapGuide Помогите получить Crystal Report Вопрос к Vit’у по поводу компонента InetDetector Изменить строку в базе?, Access 2000/ ADO Как Вы относитесь к курящим девушкам? Как сохранить массив в Ассеss программно? Не могу открыть одну из таблиц для редактирования Как установить пароль на БД Access средств. Delphi Что такое SDAC сохранение текста в поле таблицы тормоза dxdbgrid |
Платные хостинги Раскрутка сайта Книги по программированию Файлы в ListView со значками., Нужен пример!
- Код uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, comctrls, StdCtrls;type TForm1 = class(TForm) ListView1: TListView; Button1: TButton; Button2: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private procedure SaveListViewToFile(AListView: TListView; sFileName: string); procedure LoadListViewToFile(AListView: TListView; sFileName: string); public end;const Msg1 = 'File "%s" does not exist!'; Msg2 = '"%s" is not a ListView file!';var Form1: TForm1;implementation{$R *.DFM}procedure TForm1.SaveListViewToFile(AListView: TListView; sFileName: string);var idxItem, idxSub, IdxImage: Integer; F: TFileStream; pText: PChar; sText: string; W, ItemCount, SubCount: Word; MySignature: array [0..2] of Char;begin //Initialization with AListView do begin ItemCount := 0; SubCount := 0; //**** MySignature := 'LVF'; // ListViewFile F := TFileStream.Create(sFileName, fmCreate or fmOpenWrite); F.Write(MySignature, SizeOf(MySignature)); if Items.Count = 0 then // List is empty ItemCount := 0 else ItemCount := Items.Count; F.Write(ItemCount, SizeOf(ItemCount)); if Items.Count > 0 then begin for idxItem := 1 to ItemCount do begin with Items[idxItem - 1] do begin //Save subitems count if SubItems.Count = 0 then SubCount := 0 else SubCount := Subitems.Count; F.Write(SubCount, SizeOf(SubCount)); //Save ImageIndex IdxImage := ImageIndex; F.Write(IdxImage, SizeOf(IdxImage)); //Save Caption sText := Caption; w := Length(sText); pText := StrAlloc(Length(sText) + 1); StrPLCopy(pText, sText, Length(sText)); F.Write(w, SizeOf(w)); F.Write(pText^, w); StrDispose(pText); if SubCount > 0 then begin for idxSub := 0 to SubItems.Count - 1 do begin //Save Item's subitems sText := SubItems[idxSub]; w := Length(sText); pText := StrAlloc(Length(sText) + 1); StrPLCopy(pText, sText, Length(sText)); F.Write(w, SizeOf(w)); F.Write(pText^, w); StrDispose(pText); end; end; end; end; end; F.Free; end;end;procedure TForm1.LoadListViewToFile(AListView: TListView; sFileName: string);var F: TFileStream; IdxItem, IdxSubItem, IdxImage: Integer; W, ItemCount, SubCount: Word; pText: PChar; PTemp: PChar; MySignature: array [0..2] of Char; sExeName: string;begin with AListView do begin ItemCount := 0; SubCount := 0; sExeName := ExtractFileName(sFileName); if not FileExists(sFileName) then begin MessageBox(Handle, PChar(Format(Msg1, [sExeName])), 'I/O Error', MB_ICONERROR); Exit; end; F := TFileStream.Create(sFileName, fmOpenRead); F.Read(MySignature, SizeOf(MySignature)); if MySignature <> 'LVF' then begin MessageBox(Handle, PChar(Format(Msg2, [sExeName])), 'I/O Error', MB_ICONERROR); Exit; end; F.Read(ItemCount, SizeOf(ItemCount)); Items.Clear; for idxItem := 1 to ItemCount do begin with Items.Add do begin //Read imageindex F.Read(SubCount, SizeOf(SubCount)); //Read imageindex F.Read(IdxImage, SizeOf(IdxImage)); ImageIndex := IdxImage; //Read the Caption F.Read(w, SizeOf(w)); pText := StrAlloc(w + 1); pTemp := StrAlloc(w + 1); F.Read(pTemp^, W); StrLCopy(pText, pTemp, W); Caption := StrPas(pText); StrDispose(pTemp); StrDispose(pText); if SubCount > 0 then begin for idxSubItem := 1 to SubCount do begin F.Read(w, SizeOf(w)); pText := StrAlloc(w + 1); pTemp := StrAlloc(w + 1); F.Read(pTemp^, W); StrLCopy(pText, pTemp, W); Items[idxItem - 1].SubItems.Add(StrPas(pText)); StrDispose(pTemp); StrDispose(pText); end; end; end; end; F.Free; end;end;// Example:procedure TForm1.Button1Click(Sender: TObject);begin // Save Items and Clear the ListView SaveListViewToFile(ListView1, 'MyListView.sav'); ListView1.Items.Clear;end;procedure TForm1.Button2Click(Sender: TObject);begin // Load Items LoadListViewToFile(ListView1, 'MyListView.sav');end;highlightSyntax('delphiU0OGNl','delphi'); |