помогите с мемо полем

отредактировано 21:57 Раздел: FastReport 3.0
как написать следующий код,

if memo1.кол-во символов > 20 then
begin

end

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

Комментарии

  • отредактировано 21:57
    че не ужели никто незнает так же как и я
  • gpigpi
    отредактировано 21:57
    Length(Trim(Memo.Text))
    Trim убирает перевод строки
  • отредактировано 21:57
    подскажите пожалуйста, проблема следующая:

    необходимо сделать так, есть отчет на нем MasterData->Memo

    но в зависимости от увеличения количества строк неодходимо уменьшать размер шрифта, (это Мемо должно располагаться на одном листе).

    если строк мало, то и соответственно размер шрифта больше.


    вот не знаю как сделать
  • gpigpi
    отредактировано 21:57
    Если нужно проверить число строк, разделённых символами перевода строки, то Memo.Lines.Count
  • отредактировано 21:57
    огромное спасибо, что мне помогаете, но


    помогите с моим примером выше (где изменяется размер шрифта, взависимости от размера Мемо)
  • gpigpi
    отредактировано 21:57
    procedure Memo1OnBeforePrint(Sender: TfrxComponent);
    begin
    if Memo1.Lines.Count>20 then
    Memo1.Font.Size:=10
    else
    Memo1.Font.Size:=20;
    end;
  • отредактировано 21:57
    спасибо
    с этим все понятно.

    НО с этим примером чета не выходит как нада
  • отредактировано 21:57
    может быть я чегота упустил

    для чего нужны компоненты FastScript?
  • отредактировано 21:57
    при выполнении этого кода:

    if Memo1.Lines.Count>20 then
    Memo1.Font.Size:=10
    else
    Memo1.Font.Size:=20;
    end;

    если в Мемо count>10
    to 10

    если <20 to тоже самое "10" (ничего не пойму)

    вся надежда только на тебя: gpi
  • gpigpi
    отредактировано 21:57
    Вот пример
    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, frxClass;
    
    type
      TForm1 = class(TForm)
        frxReport1: TfrxReport;
        Button1: TButton;
        procedure Button1Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    procedure TForm1.Button1Click(Sender: TObject);
    begin
         frxReport1.ShowReport;
    end;
    
    end.
    ======dfm======
    object Form1: TForm1
      Left = 362
      Top = 255
      Width = 696
      Height = 480
      Caption = 'Form1'
      Color = clBtnFace
      Font.Charset = DEFAULT_CHARSET
      Font.Color = clWindowText
      Font.Height = -11
      Font.Name = 'MS Sans Serif'
      Font.Style = []
      OldCreateOrder = False
      PixelsPerInch = 96
      TextHeight = 13
      object Button1: TButton
        Left = 98
        Top = 136
        Width = 75
        Height = 25
        Caption = 'Button1'
        TabOrder = 0
        OnClick = Button1Click
      end
      object frxReport1: TfrxReport
        Version = '3.20'
        DotMatrixReport = False
        IniFile = '\Software\Fast Reports'
        PreviewOptions.Buttons = [pbPrint, pbLoad, pbSave, pbExport, pbZoom, pbFind, pbOutline, pbPageSetup, pbTools, pbEdit, pbNavigator, pbExportQuick]
        PreviewOptions.Zoom = 1.000000000000000000
        PrintOptions.Printer = 'По умолчанию'
        ReportOptions.CreateDate = 38811.562907152800000000
        ReportOptions.LastChange = 38811.562907152800000000
        ScriptLanguage = 'PascalScript'
        ScriptText.Strings = (
          'procedure Memo1OnBeforePrint(Sender: TfrxComponent);'
          'begin'
          'if Memo1.Lines.Count>20 then'
          'Memo1.Font.Size:=10'
          'else'
          'Memo1.Font.Size:=20;'
          'end;'
          ''
          'procedure MasterData1OnAfterPrint(Sender: TfrxComponent);'
          'begin'
          '     Memo1.Lines.Clear;'
          '     Memo1.Text:=''Просто строка'';'
          'end;'
          ''
          'begin'
          ''
          'end.')
        Left = 94
        Top = 64
        Datasets = <>
        Variables = <>
        Style = <>
        object Page1: TfrxReportPage
          PaperWidth = 210.000000000000000000
          PaperHeight = 297.000000000000000000
          PaperSize = 9
          LeftMargin = 10.000000000000000000
          RightMargin = 10.000000000000000000
          TopMargin = 10.000000000000000000
          BottomMargin = 10.000000000000000000
          object MasterData1: TfrxMasterData
            Height = 16.000000000000000000
            Top = 20.000000000000000000
            Width = 718.110700000000000000
            OnAfterPrint = 'MasterData1OnAfterPrint'
            RowCount = 2
            Stretched = True
            object Memo1: TfrxMemoView
              Width = 722.000000000000000000
              Height = 16.000000000000000000
              OnAfterPrint = 'Memo1OnAfterPrint'
              OnBeforePrint = 'Memo1OnBeforePrint'
              StretchMode = smActualHeight
              Memo.UTF8 = (
                'Строка1'
                'Строка2'
                'Строка3'
                'Строка4'
                'Строка5'
                'Строка6'
                'Строка7'
                'Строка8'
                'Строка9'
                'Строка10'
                'Строка11'
                'Строка12'
                'Строка13'
                'Строка14'
                'Строка15'
                'Строка16'
                'Строка17'
                'Строка18'
                'Строка19'
                'Строка20'
                'Строка21')
            end
          end
        end
      end
    end
    

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.