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

Тут можно читать онлайн Валентин Озеров - Советы по Delphi. Версия 1.4.3 от 1.1.2001 - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Советы по Delphi. Версия 1.4.3 от 1.1.2001
  • Автор:
  • Жанр:
  • Издательство:
    неизвестно
  • Год:
    неизвестен
  • ISBN:
    нет данных
  • Рейтинг:
    4/5. Голосов: 101
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

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

Советы по Delphi. Версия 1.4.3 от 1.1.2001 - описание и краткое содержание, автор Валентин Озеров, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

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

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

Советы по Delphi. Версия 1.4.3 от 1.1.2001 - читать книгу онлайн бесплатно, автор Валентин Озеров
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Данное сообщение значение не возвращает.

Комментарии

Используйте сообщение EM_REPLACESEL, если вы хотите изменять только часть текста поля редактирования. Если вам нужно заменить весь текст, используйте сообщение WM_SETTEXT.

В случае отсутствия выбранного текста, замещающий текст вставляется в текущую позицию курсора.

(из справки по Windows API)

Сделайте список с вашими стандартными фразами, и используйте события "OnClick" или "OnMouseDown" в комбинации с "Alt", "Shift" или "Ctrl". Пример: Когда пользователь нажимает клавишу "Alt" в комбинации с правой кнопкой мыши, выводится список заранее подготовленных фраз и выбранная вставляется в ваш TMemo-компонент.

Для вставки строки в Memo:

procedureTForm1.Button1Click(Sender: TObject);

begin

withMemo1 do begin

SelStart:=10;

SelLength:=0;

SelText:='Эта строка включается в Memo, начиная с 10-й позиции ';

end;

end;

Для вставки строки и замены некоторого существующего текста:

procedureTForm1.Button1Click(Sender: TObject);

begin

withMemo1 do begin

SelStart:=10;

SelLength:=20;

SelText:='Эта строка включается в Мемо, начиная с 10-й позиции и замещает собой 20 символов ';

end;

end;

Поместите текст, который вы хотите вставить, в переменную PChar, затем вставьте текст в Memo, используя команду SetSelTextBuf, где SelStart устанавливается в позицию курсора TMemo. Это классно работает.

Другая полезность: вы можете обхойти предел TMemo в 32K в случае, если вы загружаете в него текст, пользуясь методом/командой Lines.LoadfromFile. Компонент имеет внутренний предел в 32K. Если вы загружаете нужный файл в указатель, и используете команду/метод SetTexBuf, то в этом случае в TMemo можно загрузить текста вплоть до 64K.

NoteBook

Включение/Выключение закладки Notebook II

Delphi 2

В обработчике события OnChange вашего TTabbedNotebook разместите код примерно такого содержания:

if(NewTab = 0) and(IWantToDisableTab0) thenAllowChange := False;

if(NewTab = 1) and(IWantToDisableTab1) thenAllowChange := False;

Да, можно использовать конструкцию Case, но If в данном случае я посчитал удобнее.

OutLine

Раскрытие пути к элементу TOutline по его индексу

Delphi 1

Когда я писал этот код, у меня была цель по индексу TOutlineNode (который являлся результатом поиска) раскрыть его путь (т.е. раскрыть дочерние узлы, ведующие к нему), не затрагивая при это остальные узлы.

Следующая процедура в качестве параметра принимает индекс, после чего раскрывает путь к элементу с этим индексом.

Процедура подразумевает работу с объектом TOutline, имеющим имя Outline.

varOutline: TOutline;

procedureTSearchDlg.ExpandPathToFoundItem( constFoundItemIndex: Longint);

{------------------------------------------------------------------------------

Открываем путь к данному элементу (элемент определяется номером индекса).

До корневого элемента необходимо раскрывать только родителей.

-----------------------------------------------------------------------------}

var

ItemIndex: Longint;

Found: Boolean;

LastCh: Longint;

Path: String;

ItemText: String;

SepPos: Integer;

OldSep: String;

begin

{Сохраняем старый ItemSpearator}

OldSep:=Outline.ItemSeparator;

{Устанавливаем новый ItemSeparator}

Outline.ItemSeparator:='\';

{Получаем полный путь к TOutlineNode и добавляем '\'. Это делается для упрощения последующего алгоритма}

Path:=Outline.Items[FoundItemIndex].FullPath+'\';

{Зацикливаемся до тех пор, пока не будет достигнут конец пути}

whileLength(Path) > 0 do begin

{Определяем в пути позицию первого '\'}

SepPos:=Pos('\',Path);

{Изолируем элемент TOutlineNode}

ItemText:=Copy(Path,1,SepPos-1);

{Определяем индекс TOutlineNode}

ItemIndex:=Outline.GetTextItem(ItemText);

{Раскрываем его}

Outline.Items[ItemIndex].Expand;

{Вырезаем из строки раскрытый TOutlineNode}

Path:=Copy(Path,SepPos+1,Length(Path)-SepPos+1);

end;

{Восстанавливаем оригинальный ItemSeparator}

Outline.ItemSeparator:=OldSep;

end;

Детали

Давайте присвоим элементу желаемый путь:

"My Computer\Hardware\SoundCard\Base Adress"

На первом шаге возвращается приведенный выше путь. Затем изолируется подстрока «My Computer». Затем с помощью метода «GetTextItem» определяется индекс TOutlineNode «My Computer». Метод «Expand» раскрывает это дерево. Впоследствие «My Computer» вырезается из пути, и новым путем становится «Hardware\SoundCard\Base Adress».

Затем определяется индекс «Hardware», раскрывается, и снова выразается. Данная процедура повторяется до тех пор, пока не останется пути, который можно раскрыть. После чего полностью раскрывается путь передаваемой TOutlineNode.

PageControl

Динамические PageControl/TabSheet I

Delphi 2

Динамическое создание Page Control'ов и Tab Sheet'ов:

var

T : TTabSheet;

P : TPageControl;

begin

// Создаем PageControl

// При создании получаем ссылку на PageControl, чтобы в дальнейшем на него ссылаться.

P := TPageControl.Create(application);

withP do begin

Parent := Form1; // устанавливаем его как элемент управления формы.

Top := 30;

Left := 30;

Width := 200;

Height := 150;

end; // with tpagecontrol

// Создаем 3 страницы

T := TTabSheet.Create(P);

withT do begin

Visible := True; // Это необходимо, или форма не будет корректно перерисовываться

Caption := 'Страница 1';

PageControl := P; // Назначаем Tab в Page Control

end; // with

T := TTabSheet.Create(P);

withT do begin

Visible := True; // Это необходимо, или форма не будет корректно перерисовываться

Caption := 'Страница 2';

PageControl := P; // Назначаем Tab в Page Control

end; // with

T := TTabSheet.Create(P);

withT do begin

Visible := True; // Это необходимо, или форма не будет корректно перерисовываться

Caption := 'Страница 3';

PageControl := P; // Назначаем Tab в Page Control

end; // with

// Создаем 3 кнопки, 1 на страницу

withtbutton.create(application) do begin

Parent := P.Pages[0]; // «Указываем» кнопке родительскую страницу

Caption := 'Привет, страница 1';

Left := 0;

Top := 0;

end; // with

withtbutton.create(application) do begin

Parent := P.Pages[1]; // «Указываем» кнопке родительскую страницу

Caption := 'Привет, страница 2';

Left := 50;

Top := 50;

end; // with

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

Интервал:

Закладка:

Сделать


Валентин Озеров читать все книги автора по порядку

Валентин Озеров - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Советы по Delphi. Версия 1.4.3 от 1.1.2001 отзывы


Отзывы читателей о книге Советы по Delphi. Версия 1.4.3 от 1.1.2001, автор: Валентин Озеров. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x