1. Уважаемые гости и пользователи форума.
    Администрация настоятельно рекомендует не регистрировать несколько аккаунтов для одного пользователя. При выявлении наличия мультиаккаунтов будут заблокированы все учетные записи данного пользователя.
    Аккаунты, зарегистрированные на временную почту будут также заблокированы.

Модуль ReDrawText 1.5f

Модуль для создания форматированного текста

  1. Безумный Лорд Администратор

    Регистрация:
    15 июн 2011
    Сообщения:
    671
    Симпатии:
    946
    Пол:
    Мужской
    Пользователь Shegorat разместил новый ресурс:

    ReDrawText - Модуль для создания форматированного текста

    Узнать больше об этом ресурсе...
     
    Kotyarko_O, ExPlayer, aibek1996 и 30 другим нравится это.
  2. Безумный Лорд Администратор

    Регистрация:
    15 июн 2011
    Сообщения:
    671
    Симпатии:
    946
    Пол:
    Мужской
    Все равно рано или поздно он будет у всех. Так что лучше уж я сам его выложу...
     
    Krinkels, aibek1996, ReFLeXx и 6 другим нравится это.
  3. Старожил

    Регистрация:
    22 сен 2011
    Сообщения:
    14
    Симпатии:
    2
    Пол:
    Мужской
    Кстати, ты прав.
    А я не ожидал так много кода для такой "маленькой" вещицы... :(

    Но хорошо, что ты пришел к правильному выводу, и не то чтоб он попался бы к другим рукам, а то, что, если сайта считаешь своим ресурсом - надо к таким вещам не ограничивать пользователей, а наоборот. ;)
     
    Последнее редактирование: 30 авг 2012
    aibek1996 и Dark_Delphin нравится это.
  4. Борода Модератор

    Регистрация:
    15 июн 2011
    Сообщения:
    718
    Симпатии:
    534
    Пол:
    Мужской
    Когда ты напишешь хотя-бы на 10% настолько-же значимое, только тогда ты будешь иметь право говорить эти слова, не ранее. В данный момент была необходимость опубликовать от своего имени то, что было украдено. Во избежание того, чтобы какая-нибудь нехорошая редиска не присвоила себе авторство.
     
    Последнее редактирование модератором: 12 сен 2012
    Dark_Delphin, YURSHAT, Krinkels и ещё 1-му нравится это.
  5. Старожил

    Регистрация:
    7 сен 2012
    Сообщения:
    22
    Симпатии:
    0
    Привет, не подскажите как сделать цветной текст на разных страницах, например, на странице приветствия и финишной? Получается только на одной.
     
  6. Безумный Лорд Администратор

    Регистрация:
    15 июн 2011
    Сообщения:
    671
    Симпатии:
    946
    Пол:
    Мужской
    В примере сделан цветной текст для страницы выбора папки установки. Для других страниц аналогично - создаем лейбл-болванку на нужной странице, а потом вызываем ReDrawText для этого лейбла.
     
  7. Старожил

    Регистрация:
    7 сен 2012
    Сообщения:
    22
    Симпатии:
    0
    В скриптах не силен, пробовал и так и сяк, то ошибки выдает, то только на одной странице отображается.
     
  8. Тех. админ Администратор

    Регистрация:
    26 дек 2011
    Сообщения:
    514
    Симпатии:
    601
    Пол:
    Мужской
    MogilShik, вот Вам пример на нескольких страницах
     

    Вложения:

    urban и MogilShik нравится это.
  9. Старожил

    Регистрация:
    7 сен 2012
    Сообщения:
    22
    Симпатии:
    0
    YURSHAT спасибо, страницу приветствия сделал как хотел, а вот с последней возникли трудности,
    одновременно не удается текст менять в FinishedLabel и в FinishedHeadingLabel, хотя не суть важно, сделал весь текст через FinishedHeadingLabel, меня интересует как текст разукрасить возле чекбокса на последней странице, если не трудно то можно пример?
     
  10. Ветеран Проверенный

    Регистрация:
    19 дек 2011
    Сообщения:
    351
    Симпатии:
    401
    потому что finishedheadinglabel - tnewstatictext. можно сделать по примеру YURSHAT'а:
    Код (Text):
    #include "ReDrawText v.1.5e.iss"

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

    [code]
    var
      WelcomeLabel1, FinishedLabel, FinishedHeadingLabel : Tlabel;
      WelcomeLabel1Rdw, FinishedLabelRdw, FinishedHeadingLabelRdw: TRedrawedLabel;

    procedure RedesignWizardForm;
    begin
      WizardForm.WelcomeLabel1.Hide;
      WizardForm.FinishedLabel.Hide;
      WizardForm.FinishedHeadingLabel.Hide;

      WelcomeLabel1 := TLabel.Create(WizardForm);
      with WelcomeLabel1 do begin
        AutoSize:=False;
        SetBounds(ScaleX(176), ScaleY(16), ScaleX(301), ScaleY(55));
        Caption := '[name=Verdana][size=12]Вас приветствует [b]Мастер установки[/b] игры [i][color=$FF0000]"Крутая Игра"[/color][/i][/size][/name]';
        Parent:=WizardForm.WelcomePage;
      end;
      WelcomeLabel1Rdw:= ReDrawText(WelcomeLabel1);

      FinishedLabel := TLabel.Create(WizardForm);
      with FinishedLabel do begin
        AutoSize:=False;
        SetBounds(ScaleX(176), ScaleY(71), ScaleX(301), ScaleY(66));
        Caption := '[name=Georgia][size=12]Вроде установилась [b]эта хрень[/b] на мой [i][color=$FF0000]мега-калькулятор[/color][/i].[/size][/name]';
        Parent:=WizardForm.FinishedPage;
      end;
      FinishedLabelRdw:= ReDrawText(FinishedLabel);

      FinishedHeadingLabel := TLabel.Create(WizardForm);
      with FinishedHeadingLabel do begin
        AutoSize:=False;
        SetBounds(WizardForm.FinishedHeadingLabel.Left, WizardForm.FinishedHeadingLabel.Top, ScaleX(301), ScaleY(66));
        Caption := '[name=Georgia][size=12]Завершение [b]мастера[/b] установки [i][color=$FF0000]игры[/color][/i].[/size][/name]';
        Parent:=WizardForm.FinishedPage;
      end;
      FinishedHeadingLabelRdw:= ReDrawText(FinishedHeadingLabel);
    end;

    procedure InitializeWizard();
    begin
      RedesignWizardForm;
    end;

     
    например так:
    Код (Text):
    #include "ReDrawText v.1.5e.iss"

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

    [code]
    var
      WelcomeLabel1, FinishedLabel, FinishedHeadingLabel, CaptionForCheckBox : Tlabel;
      WelcomeLabel1Rdw, FinishedLabelRdw, FinishedHeadingLabelRdw, CaptionForCheckBoxRdw : TRedrawedLabel;
      CheckBox : TNewCheckBox;

    procedure CheckBoxOnClick(Sender : TObject);
    begin
      if CheckBox.Checked then
        HideRWLabel(CaptionForCheckBoxRdw)
      else
        ShowRWLabel(CaptionForCheckBoxRdw);
    end;

    procedure RedesignWizardForm;
    begin
      WizardForm.WelcomeLabel1.Hide;
      WizardForm.FinishedLabel.Hide;
      WizardForm.FinishedHeadingLabel.Hide;

      WelcomeLabel1 := TLabel.Create(WizardForm);
      with WelcomeLabel1 do begin
        AutoSize:=False;
        SetBounds(ScaleX(176), ScaleY(16), ScaleX(301), ScaleY(55));
        Caption := '[name=Verdana][size=12]Вас приветствует [b]Мастер установки[/b] игры [i][color=$FF0000]"Крутая Игра"[/color][/i][/size][/name]';
        Parent:=WizardForm.WelcomePage;
      end;
      WelcomeLabel1Rdw:= ReDrawText(WelcomeLabel1);

      FinishedLabel := TLabel.Create(WizardForm);
      with FinishedLabel do begin
        AutoSize:=False;
        SetBounds(ScaleX(176), ScaleY(71), ScaleX(301), ScaleY(66));
        Caption := '[name=Georgia][size=12]Вроде установилась [b]эта хрень[/b] на мой [i][color=$FF0000]мега-калькулятор[/color][/i].[/size][/name]';
        Parent:=WizardForm.FinishedPage;
      end;
      FinishedLabelRdw:= ReDrawText(FinishedLabel);

      FinishedHeadingLabel := TLabel.Create(WizardForm);
      with FinishedHeadingLabel do begin
        AutoSize:=False;
        SetBounds(WizardForm.FinishedHeadingLabel.Left, WizardForm.FinishedHeadingLabel.Top, ScaleX(301), ScaleY(66));
        Caption := '[name=Georgia][size=12]Завершение [b]мастера[/b] установки [i][color=$FF0000]игры[/color][/i].[/size][/name]';
        Parent:=WizardForm.FinishedPage;
      end;
      FinishedHeadingLabelRdw:= ReDrawText(FinishedHeadingLabel);

      CheckBox := TNewCheckBox.Create(WizardForm);
      with CheckBox do begin
        SetBounds(ScaleX(175), ScaleY(150), ScaleX(301), ScaleY(66));
        Caption := '';
        OnClick := @CheckBoxOnClick;
        Parent:=WizardForm.FinishedPage;
      end;

      CaptionForCheckBox := TLabel.Create(WizardForm);
      with CaptionForCheckBox do begin
        AutoSize:=False;
        SetBounds(ScaleX(195), ScaleY(173), ScaleX(301), ScaleY(66));
        Caption := '[name=Georgia][size=12]Пример [i][color=$FF0000]чекбокса[/color][/i].[/size][/name]';
        Parent:=WizardForm.FinishedPage;
      end;
      CaptionForCheckBoxRdw:= ReDrawText(CaptionForCheckBox);
    end;

    procedure InitializeWizard();
    begin
      RedesignWizardForm;
    end;

     
     
    Evilboy и MogilShik нравится это.
  11. Старожил

    Регистрация:
    7 сен 2012
    Сообщения:
    22
    Симпатии:
    0
    Mailchik код по finishedheadinglabel так и делал, выдает ошибку.

    По чекбоксу попробую)))

    Тоже выдает ту же самую ошибку, что и с finishedheadinglabel: 'BEGIN' expected
     
    Последнее редактирование: 12 сен 2012
  12. Борода Модератор

    Регистрация:
    15 июн 2011
    Сообщения:
    718
    Симпатии:
    534
    Пол:
    Мужской
    Где-то end; забыл.
     
  13. Старожил

    Регистрация:
    7 сен 2012
    Сообщения:
    22
    Симпатии:
    0
    Gnom, а где именно смотреть? Выше скрипты выкладывал Mailchik, делал как там, все равно появляется эта ошибка.
     
  14. Ветеран Проверенный

    Регистрация:
    19 дек 2011
    Сообщения:
    351
    Симпатии:
    401
    MogilShik, я даже не знаю, что вам ответить. то есть, вы утверждаете, что скопировав коды, которые я выше привел, у вас появляются ошибки?
    перед тем, как написать, я проверил эти коды. и у меня, к сожалению нет никаких ошибок..
     
  15. Старожил

    Регистрация:
    7 сен 2012
    Сообщения:
    22
    Симпатии:
    0
    Mailchik так точно, я просто всю эту кучу-малу объединял, в общем вот скрипт:
     

    Вложения:

    • Stronghold.7z
      Размер файла:
      234,2 КБ
      Просмотров:
      11
    Последнее редактирование: 13 сен 2012
  16. Ветеран

    Регистрация:
    26 июн 2011
    Сообщения:
    66
    Симпатии:
    22
  17. Старожил

    Регистрация:
    7 сен 2012
    Сообщения:
    22
    Симпатии:
    0
    Спасибо, пашет с одним но, там по умолчанию чекбокс который скрывается отмечен галочкой мол запустить игру, этот новый его заменяет, но в скрытом то галочка так и стоит, как тут быть?
    А заголовок рядом с чекбоксом вообще не срабатывает, пустота и все(((
     
    Последнее редактирование: 13 сен 2012
  18. Старожил

    Регистрация:
    7 сен 2012
    Сообщения:
    22
    Симпатии:
    0
    Чет вот не пойму, а как чекбокс заставить .ехе увидеть который нужно запустить? И текст рядом с чекбоксом так и не отображается.
     

    Вложения:

    • Stronghold.7z
      Размер файла:
      234,2 КБ
      Просмотров:
      16
    Последнее редактирование: 15 сен 2012
  19. Тех. админ Администратор

    Регистрация:
    26 дек 2011
    Сообщения:
    514
    Симпатии:
    601
    Пол:
    Мужской
    Текст не отображается, потому как у вас сам чекбокс перекрывает лейбл с текстом :)
    ЗЫ. А вообще я так понимаю нужен чекбокс, надпись у которого цветная и при нажатии запуск игры?
    ЗЫЫ. По такой цветной надписи нельзя кликнуть. То есть если вы применяете к лейблу раскраску, события клика на нем не отработают....

    Опишите подробно, что хотите сделать, а я вам дам пример...
     
    Последнее редактирование: 15 сен 2012
  20. Старожил

    Регистрация:
    7 сен 2012
    Сообщения:
    22
    Симпатии:
    0
    Нужен станадртный чекбокс, у которого ставится или снимается галочка, для запуска игры или программы при нажатии кнопки завершить инсталляцию, ну а рядом текст своим цветом, запустить игру такую то, названии игры своим цветом, если чекбокс отмечен игра запускается, в общем все стандартно, только текст разноцветный.
     

Поделиться этой страницей