Валентин Озеров - Советы по Delphi. Версия 1.4.3 от 1.1.2001

Здесь есть возможность читать онлайн «Валентин Озеров - Советы по Delphi. Версия 1.4.3 от 1.1.2001» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Советы по Delphi. Версия 1.4.3 от 1.1.2001: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Советы по Delphi. Версия 1.4.3 от 1.1.2001»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

…начиная с 1001. Смотрите другие файлы…

Советы по Delphi. Версия 1.4.3 от 1.1.2001 — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Советы по Delphi. Версия 1.4.3 от 1.1.2001», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

MoveMemory(FMemory, tmp, FSize);

GlobalUnlock(FHandle);

FPosition := 0;

CloseClipboard;

end;

destructorTClipboardStream.Destroy;

begin

FreeMem(FMemory);

end;

functionTClipboardStream.Read( varBuffer; Count : longint) : longint;

begin

ifFPosition + Count > FSize thenResult := FSize - FPosition

elseResult := Count;

MoveMemory(@Buffer, PChar(FMemory) + FPosition, Result);

Inc(FPosition, Result);

end;

functionTClipboardStream.Write( constBuffer; Count : longint) : longint;

var

FHandle : HGlobal;

tmp : pointer;

begin

ReallocMem(FMemory, FPosition + Count);

MoveMemory(PChar(FMemory) + FPosition, @Buffer, Count);

FPosition := FPosition + Count;

FSize := FPosition;

FHandle := GlobalAlloc(GMEM_MOVEABLE orGMEM_SHARE orGMEM_ZEROINIT, FSize);

try

tmp := GlobalLock(FHandle);

try

MoveMemory(tmp, FMemory, FSize);

OpenClipboard(0);

SetClipboardData(FFormat, FHandle);

finally

GlobalUnlock(FHandle);

end;

CloseClipboard;

except

GlobalFree(FHandle);

end;

Result := Count;

end;

functionTClipboardStream.Seek(Offset : Longint; Origin : Word) : Longint;

begin

caseOrigin of

0 : FPosition := Offset;

1 : Inc(FPosition, Offset);

2 : FPosition := FSize + Offset;

end;

Result := FPosition;

end;

end.

Шрифты

Хранение стилей шрифта

Как мне сохранить свойство шрифта Style, ведь он же набор?

Вы можете получать и устанавливать FontStyle через его преобразование к типу byte.

Для примера,

VarStyle: TFontStyles;

begin

{ Сохраняем стиль шрифта в байте }

Style := Canvas.Font.Style; {необходимо, поскольку Font.Style – свойство}

ByteValue := Byte(Style);

{ Преобразуем значение byte в TFontStyles }

Canvas.Font.Style := TFontStyles(ByteValue);

end;

Для восстановления шрифта, вам необходимо сохранить параметры Color, Name, Pitch, Style и Size в базе данных и назначить их соответствующим свойствам при загрузке.

– Robert Wittig

Управление настройками шрифта

Delphi 1

{

Данный код изменяет стиль шрифта поля редактирования,

если оно выбрано. Может быть адаприрован для управления

шрифтами в других объектах.

Расположите на форме Edit(Edit1) и ListBox(ListBox1).

Добавьте следующие элементы (Items) к ListBox:

fsBold

fsItalic

fsUnderLine

fsStrikeOut

}

procedureTForm1.ListBox1Click(Sender: TObject);

varX: Integer;

typeTLookUpRec = record

Name: String;

Data: TFontStyle;

end;

constLookUpTable: array[1..4] ofTLookUpRec = (

(Name: 'fsBold'; Data: fsBold),

(Name: 'fsItalic'; Data: fsItalic),

(Name: 'fsUnderline'; Data: fsUnderline),

(Name: 'fsStrikeOut'; Data: fsStrikeOut));

begin

X := ListBox1.ItemIndex;

Edit1.Text := ListBox1.Items[X];

Edit1.Font.Style := [LookUpTable[ListBox1.ItemIndex+1].Data];

end;

Перетащи и брось (Drag and Drop)

Как получить список файлов, которые были перенесены на мою форму, например, из Проводника?

Из советов Nomadic'a:

Развлекался когда-то — вот, осталось:

unitUnit1;

interface

usesWindows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ShellAPI, Grids, StdCtrls;

typeTForm1 = class(TForm)

lb: TListBox;

Memo1: TMemo;

Button1: TButton;

Button2: TButton;

procedureFormCreate(Sender: TObject);

procedureButton1Click(Sender: TObject);

procedureButton2Click(Sender: TObject);

private

procedureWMDropFiles( varM: TMessage); messageWM_DROPFILES;

{ Private declarations }

public

{ Public declarations }

end;

varForm1: TForm1;

implementation

Var

CountFiles: integer;

SizeName : integer;

cch : integer;

Var

hDrop: integer;

Point: TPoint;

lpszFile: PChar;

{$R *.DFM}

procedureTForm1.WMDropFiles( varM: TMessage);

Vari: integer;

begin

hDrop:= M.WParam;

DragQueryPoint(hDrop, Point);

CountFiles:= DragQueryFile(hDrop, $FFFFFFFF, nil, cch);

fori:=0 toCountFiles-1 do begin

SizeName:= DragQueryFile(hDrop, i, nil, cch);

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Советы по Delphi. Версия 1.4.3 от 1.1.2001»

Представляем Вашему вниманию похожие книги на «Советы по Delphi. Версия 1.4.3 от 1.1.2001» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Советы по Delphi. Версия 1.4.3 от 1.1.2001»

Обсуждение, отзывы о книге «Советы по Delphi. Версия 1.4.3 от 1.1.2001» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x