ReDrawText

Модуль ReDrawText 1.5f

Нет прав для скачивания

MogilShik

Новичок
Спасибо, все отлично работает :good:
Вот интересно, а на деинсталляторе цветной текст работает?)))
 

MogilShik

Новичок
Подскажите, а стоит ли код перегружать еще и цветным деинсталлятором?)))
 

Adil

Старожил
Всем добрый день
А как быть с ReDrawText при спрятанных иннер и оуттер ноутбуках, т.е. указываю родителем визардформ, а он показывает лэйблы на всех страницах
 

Mailchik

Старожил
Проверенный
nazbek010, например так:
Код:
#include "ReDrawText v.1.5e.iss"

[Setup]
AppName=MyApp
AppVername=MyApp
DefaultDirName={pf}\MyApp

[code]
var
  WelcomeLabel1, SelecDirLabel : Tlabel;
  WelcomeLabel1Rdw, SelecDirLabelRdw : TRedrawedLabel;

procedure RedesignWizardForm;
begin
  WizardForm.InnerNotebook.Hide;
  WizardForm.OuterNotebook.Hide;

  WelcomeLabel1 := TLabel.Create(WizardForm);
  with WelcomeLabel1 do begin
    AutoSize:=False;
    SetBounds(ScaleX(176), ScaleY(100), ScaleX(301), ScaleY(55));
    Caption := '[name=Verdana][size=12]Ðàçíîöâåòíûé [b]òåêñò[/b] [i][color=$2222b2]íîìåð1[/color][/i][/size][/name]';
    Parent:=WizardForm;
  end;
  WelcomeLabel1Rdw:= ReDrawText(WelcomeLabel1);

  SelecDirLabel := TLabel.Create(WizardForm);
  with SelecDirLabel do begin
    AutoSize:=False;
    SetBounds(ScaleX(176), ScaleY(130), ScaleX(301), ScaleY(66));
    Caption := '[name=Georgia][size=12]Ðàçíîöâåòíûé [b]òåêñò[/b][i][color=$FF0000]íîìåð2[/color][/i].[/size][/name]';
    Parent:=WizardForm;
  end;
  SelecDirLabelRdw:= ReDrawText(SelecDirLabel);
end;

procedure InitializeWizard();
begin
  RedesignWizardForm;
end;

procedure CurPageChanged(CurPageID : Integer);
begin
HideRWLabel(WelcomeLabel1Rdw);
HideRWLabel(SelecDirLabelRdw);
if CurPageID = wpWelcome then
  ShowRWLabel(WelcomeLabel1Rdw);
if CurPageID = wpSelectDir then
  ShowRWLabel(SelecDirLabelRdw);
end;
 

sergey3695

Ветеран
Модератор
Привет всем. Как-то захотелось мне разукрасить инсталл, и тут засада. Как сделать Alignment:=taCenter; для лейбла отрисованного при помощи ReDrawText?
 
Последнее редактирование:
  • Like
Реакции: Adil

Shegorat

Lord of Madness
Администратор
Привет всем. Как-то захотелось мне разукрасить инсталл, и тут засада. Как сделать Alignment:=taCenter; для лейбла отрисованного при помощи ReDrawText?
Никак. Пока я не обновлю модуль, а это будет еще не скоро.
 

urban

Старожил
интересует вопрос,как сделать чтобы при использовании вычесления свободного и нужного места на диске,при смене диска и менялось свободное место на диске?
 

Shegorat

Lord of Madness
Администратор
интересует вопрос,как сделать чтобы при использовании вычесления свободного и нужного места на диске,при смене диска и менялось свободное место на диске?
Эээм, а при чем тут ReDrawText?
P.S. Скоро соберусь переписывать модуль, чего добавить нужно?
 

urban

Старожил
Shegorat, ну как при чем? когда меняю диск с С на Д например то в редроу пишет например 8 гб,а при юзании кода на вычесление свободного места оно не обновяется,а остается от старого,если не поняли то сделаю скрин:)
 

Shegorat

Lord of Madness
Администратор
Shegorat, ну как при чем? когда меняю диск с С на Д например то в редроу пишет например 8 гб,а при юзании кода на вычесление свободного места оно не обновяется,а остается от старого,если не поняли то сделаю скрин
Нууу нужно очистить старый TRedrawedLabel, обновить текст в TLabel и по нему создать новый TRedrawedLabel
 

sergey3695

Ветеран
Модератор
P.S. Скоро соберусь переписывать модуль, чего добавить нужно?
Alignment:=taCenter; :)
urban,
Код:
  DestroyRWlabel(FreeSpaceLabel);
  FreeSpaceLabel1.Caption:= '[color=$FFFFFF]'+ExpandConstant('Available hard disk space: ')+StringOfChar('-', Length(MbOrTb(FreeMB)))+'[/color]';
  FreeSpaceLabel:= ReDrawText(FreeSpaceLabel1);
Типо так.
 
Последнее редактирование:

urban

Старожил
а как на странице установки сделать текст? пробовал по примерам делать,но его не видно при использовании исдона,а так то пашет
upd: сделал,нужно было названия лейблов правильно поменять,кому интересно вот код
Код:
function GetTickCount: DWord; external 'GetTickCount@kernel32';

var myLbl1: TLabel;
    MyLblRdw1: TRedrawedLabel;
    Ticks1: DWORD;

procedure InstallingOnChange(Sender: TObject);
begin
  Mylbl1.Caption:= '[color=$FF0000]Распаковка архивов[/color]'
  ticks1:= getTickCount;
  MyLblRdw1:= ReDrawText(MyLbl1);
  log('Drawing time '+IntToStr(GetTickCount-ticks1)+'ms.')
//  MsgBox('Время рисования '+IntToStr(GetTickCount-ticks)+' мс.', mbConfirmation, MB_OK);
end;

procedure initializeWizard();
begin
  Mylbl1:= tLabel.Create(WizardForm);
  MyLbl1.AutoSize:= False;
  MyLbl1.WordWrap:= true;
  MyLbl1.SetBounds(0, 31, 410, 80);
  MyLbl1.Parent:= WizardForm.InstallingPage;
  WizardForm.DirEdit.OnChange:= @InstallingOnChange;
  WizardForm.DirEdit.Text:= WizardForm.DirEdit.Text+#0;
end;
 

altEF_4

Новичок
вот доработал немного модуль для себя, добавил Alignment, перерисованный текст ведет себя как обычный TLabel если размер текста больше чем указано, добавил "тень", включается Enabled:=True; цвет Hint:='$0000FF'; (убрать несложно). выкладываю в качестве временного решения, если Shegorat решит удалить сообщение - то я не против, все же он автор :)
 

Вложения

Snoopak96

Старожил
altEF_4,
Смысл делать фитчи какие-то? если модуль глючный, вернее баг чина-расширенки, автор об этом не упомянул.
 

altEF_4

Новичок
повторюсь, делал для себя (было нужно), выложил может кому еще пригодится, а если нет - значит нет.
 

Shegorat

Lord of Madness
Администратор

Kotyarko_O

Новичок
Здравствуйте.
Вместе с добавлением тега (использовал только b) добавляются и лишние пробелы вокруг места, куда они добавлялись.
16.01.jpg
Я заметил: если текст, помещённый в тег, по краям не выделен пробелами, то они добавляются; если выделен - они не добавляются. Ansi-версия, если это важно.
Так и должно быть или где-то проблема?
 
Сверху