Содержание

Пошаговое руководство. Создание кнопки с помощью XAML — WPF .NET Framework

Twitter LinkedIn Facebook Адрес электронной почты

  • Статья

Это пошаговое руководство предназначено для изучения того, как с помощью XAML можно создать анимированную кнопку для использования в приложении Windows Presentation Foundation.

В этом пошаговом руководстве для создания ресурса настраиваемой кнопки используются стили и шаблон, что обеспечивает повторное использование кода и разделение логики кнопки от объявления кнопки. Код в этом пошаговом руководстве полностью написан на языке XAML.

Важно!

В этом пошаговом руководстве показано, как можно создать приложение путем ввода или копирования и вставки кода на языке XAML в Visual Studio. Если вы хотите узнать, как для создания того же приложения использовать конструктор, см. статью Создание кнопки с помощью Microsoft Expression Blend.

На следующем рисунке показаны готовые кнопки.

Создание основных кнопок

Начнем с создания проекта и добавления нескольких кнопок в окно.

Создание проекта WPF и добавление кнопок в окно

  1. Запустите Visual Studio.

  2. Создайте новый проект WPF: в меню Файл нажмите сначала пункт Создать, а затем Проект. Найдите шаблон Приложение Windows (WPF) и назначьте проекту имя «AnimatedButton». В результате будет создана основная структура для приложения.

  3. Добавьте основные кнопки по умолчанию: Все файлы, необходимые для этого пошагового руководства, предоставляются шаблоном. Откройте файл Window1.xaml, дважды щелкнув его в Обозревателе решений. По умолчанию в файле Window1.xaml есть элемент Grid. Удалите элемент Grid и добавьте несколько кнопок на страницу XAML, введя или вставив следующий фрагмент кода в файл Window1.xaml:

    <Window x:Class="AnimatedButton.Window1"
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      Title="AnimatedButton"
      Background="Black">
      <!-- Buttons arranged vertically inside a StackPanel. -->
      <StackPanel HorizontalAlignment="Left">
          <Button>Button 1</Button>
          <Button>Button 2</Button>
          <Button>Button 3</Button>
      </StackPanel>
    </Window>
    

    Нажмите клавишу F5, чтобы запустить приложение; вы увидите набор кнопок, как это представлено на следующем рисунке.

    Теперь, после создания основных кнопок, можно завершить работу с файлом Window1.xaml. Дальше в этом пошаговом руководстве основное внимание уделяется файлу app.xaml, в котором определяются стили и шаблон кнопок.

Задание основных свойств

Давайте настроим некоторые свойств этих кнопок, чтобы осуществить управление их внешним видом и макетом. Вместо того, чтобы настраивать свойства кнопок по отдельности, нужно использовать ресурсы для определения свойств кнопок во всем приложении. Ресурсы приложений концептуально похожи на внешние каскадные таблицы стилей (CSS) для веб-страниц; однако ресурсы намного эффективней каскадных таблицы стилей (CSS), в чем можно будет убедиться в конце этого пошагового руководства. Дополнительные сведения о ресурсах см. в разделе Ресурсы XAML.

Использование стилей для задания основных свойств кнопок

  1. Определите блок Application.Resources:

    откройте файл app.xaml и добавьте следующий выделенный фрагмент разметки, если он еще отсутствует в этом файле:

    <Application x:Class="AnimatedButton. App"
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      StartupUri="Window1.xaml"
      >
      <Application.Resources>
        <!-- Resources for the entire application can be defined here. -->
      </Application.Resources>
    </Application>
    

    Область ресурса определяется тем, где определяется ресурс. Определение ресурсов в Application.Resources в файле app.xaml позволяет использовать ресурсы в любом месте приложения. Дополнительные сведения об определении области ресурсов см. в статье Ресурсы XAML.

  2. Создайте стиль и определите с его помощью базовые значения свойств: добавьте следующую разметку в блок Application.Resources. Эта разметка создает объект Style, который применяется ко всем кнопкам в приложении и задает для свойства кнопок Width значение 90 и для свойства Margin значение 10:

    <Application.Resources>
      <Style TargetType="Button">
        <Setter Property="Width" Value="90" />
        <Setter Property="Margin" Value="10" />
      </Style>
    </Application.
    Resources>

    Свойство TargetType определяет то, что стиль применяется ко всем объектам типа Button. Каждый объект Setter задает разные значения свойств для объекта Style. Таким образом, на этом этапе каждая кнопка в приложении имеет ширину величиной 90 и отступ величиной 10. Если нажать клавишу F5 для запуска приложения, отобразится следующее окно.

    Существует намного больше возможностей по работе со стилями, включая различные способы точной настройки целевых объектов, указание сложных значений свойств и даже использование стилей в качестве входных данных для других стилей. Более подробную информацию см. в разделе Стилизация и использование шаблонов.

  3. Задайте для ресурса значение свойства стиля: ресурсы позволяют простым образом использовать часто определяемые объекты и значения. Особенно эффективным является определение с помощью ресурсов сложных значений для того, чтобы сделать код более модульным. Добавьте следующий выделенный фрагмент с разметкой в файл app. xaml.

    <Application.Resources>
      <LinearGradientBrush x:Key="GrayBlueGradientBrush" StartPoint="0,0" EndPoint="1,1">
        <GradientStop Color="DarkGray" Offset="0" />
        <GradientStop Color="#CCCCFF" Offset="0.5" />
        <GradientStop Color="DarkGray" Offset="1" />
      </LinearGradientBrush>
      <Style TargetType="{x:Type Button}">
        <Setter Property="Background" Value="{StaticResource GrayBlueGradientBrush}" />
        <Setter Property="Width" Value="80" />
        <Setter Property="Margin" Value="10" />
      </Style>
    </Application.Resources>
    

    Непосредственно под блоком Application.Resources вы создали ресурс с именем GrayBlueGradientBrush. Этот ресурс определяет горизонтальный градиент. Этот ресурс можно использовать в качестве значения свойства из любого места в приложении, включая метод задания стиля кнопки для свойства Background. Теперь у всех кнопок имеется значение свойства Background как у этого градиента.

    Нажмите клавишу F5 для запуска приложения. Это должно выглядеть примерно так.

Создание шаблона, определяющего внешний вид кнопки

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

До сих пор управление тем, как кнопки выглядят в приложении, ограничивалось изменением свойств кнопки. А что если нужно внести более радикальные изменения во внешний вид кнопки? Шаблоны предоставляют более широкие возможности по управлению внешним видом объекта. Так как шаблоны можно использовать в стилях, шаблоны применимы ко всем объектам, к которым применяется стиль (в этом пошаговом руководстве это кнопка).

Использование шаблона для определения внешнего вида кнопки

  1. Настройте шаблон: вследствие того, что у таких элементов управления, как Button имеется свойство Template, можно определить значение свойства шаблона также, как другие значения свойств, которые задавались ранее в объекте Style с помощью объекта Setter.

    Добавьте следующий выделенный фрагмент с разметкой в стиль кнопки.

    <Application.Resources>
      <LinearGradientBrush x:Key="GrayBlueGradientBrush"
        StartPoint="0,0" EndPoint="1,1">
        <GradientStop Color="DarkGray" Offset="0" />
        <GradientStop Color="#CCCCFF" Offset="0.5" />
        <GradientStop Color="DarkGray" Offset="1" />
      </LinearGradientBrush>
      <Style TargetType="{x:Type Button}">
        <Setter Property="Background" Value="{StaticResource GrayBlueGradientBrush}" />
        <Setter Property="Width" Value="80" />
        <Setter Property="Margin" Value="10" />
        <Setter Property="Template">
          <Setter.Value>
            <!-- The button template is defined here. -->
          </Setter.Value>
        </Setter>
      </Style>
    </Application.Resources>
    
  2. Измените внешний вид кнопки: на этом этапе нужно определить шаблон. Добавьте следующий выделенный фрагмент с разметкой. В этой разметке задаются два элемента Rectangle с округленными краями, после которых задается объект DockPanel. Объект DockPanel используется для размещения объекта ContentPresenter кнопки. Объект ContentPresenter выполняет отображение содержимого кнопки. В этом пошаговом руководстве содержимое — это текст («Кнопка 1», «Кнопка 2», «Кнопка 3»). Все компоненты шаблона (прямоугольники и объект DockPanel) размещаются внутри объекта Grid.

    <Setter.Value>
      <ControlTemplate TargetType="Button">
        <Grid ClipToBounds="True">
          <!-- Outer Rectangle with rounded corners. -->
          <Rectangle x:Name="outerRectangle" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Stroke="{TemplateBinding Background}" RadiusX="20" RadiusY="20" StrokeThickness="5" Fill="Transparent" />
          <!-- Inner Rectangle with rounded corners. -->
          <Rectangle x:Name="innerRectangle" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Stroke="Transparent" StrokeThickness="20" Fill="{TemplateBinding Background}" RadiusX="20" RadiusY="20" />
          <!-- Present Content (text) of the button.  -->
          <DockPanel Name="myContentPresenterDockPanel">
            <ContentPresenter x:Name="myContentPresenter" Margin="20" Content="{TemplateBinding  Content}" TextBlock.Foreground="Black" />
          </DockPanel>
        </Grid>
      </ControlTemplate>
    </Setter.Value>
    

    Нажмите клавишу F5 для запуска приложения. Это должно выглядеть примерно так.

  3. Добавьте в шаблон эффект стекла: далее нужно добавить эффект стекла. Сначала нужно создать некоторые ресурсы, которые воспроизводят эффект градиента как у стекла. Добавьте эти ресурсы градиента в любое место в блоке Application.Resources:

    <Application.Resources>
      <GradientStopCollection x:Key="MyGlassGradientStopsResource">
        <GradientStop Color="WhiteSmoke" Offset="0.2" />
        <GradientStop Color="Transparent" Offset="0.4" />
        <GradientStop Color="WhiteSmoke" Offset="0.5" />
        <GradientStop Color="Transparent" Offset="0. 75" />
        <GradientStop Color="WhiteSmoke" Offset="0.9" />
        <GradientStop Color="Transparent" Offset="1" />
      </GradientStopCollection>
      <LinearGradientBrush x:Key="MyGlassBrushResource"
        StartPoint="0,0" EndPoint="1,1" Opacity="0.75"
        GradientStops="{StaticResource MyGlassGradientStopsResource}" />
    <!-- Styles and other resources below here. -->
    

    Эти ресурсы используются как свойство Fill для прямоугольника, который вставляется в объект Grid из шаблона кнопки. Добавьте в шаблон следующий выделенный фрагмент с разметкой.

    <Setter.Value>
      <ControlTemplate TargetType="{x:Type Button}">
        <Grid
          ClipToBounds="True">
        <!-- Outer Rectangle with rounded corners. -->
        <Rectangle x:Name="outerRectangle" HorizontalAlignment="Stretch"
          VerticalAlignment="Stretch" Stroke="{TemplateBinding Background}"
          RadiusX="20" RadiusY="20" StrokeThickness="5" Fill="Transparent" />
        <!-- Inner Rectangle with rounded corners.  -->
        <Rectangle x:Name="innerRectangle" HorizontalAlignment="Stretch"
          VerticalAlignment="Stretch" Stroke="Transparent" StrokeThickness="20"
          Fill="{TemplateBinding Background}" RadiusX="20" RadiusY="20" />
        <!-- Glass Rectangle -->
        <Rectangle x:Name="glassCube" HorizontalAlignment="Stretch"
          VerticalAlignment="Stretch"
          StrokeThickness="2" RadiusX="10" RadiusY="10" Opacity="0"
          Fill="{StaticResource MyGlassBrushResource}"
          RenderTransformOrigin="0.5,0.5">
          <Rectangle.Stroke>
            <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
              <LinearGradientBrush.GradientStops>
                <GradientStop Offset="0.0" Color="LightBlue" />
                <GradientStop Offset="1.0" Color="Gray" />
              </LinearGradientBrush.GradientStops>
            </LinearGradientBrush>
          </Rectangle.Stroke>
          <!-- These transforms have no effect as they are declared here.
          The reason the transforms are included is to be targets
          for animation (see later).  -->
          <Rectangle.RenderTransform>
            <TransformGroup>
              <ScaleTransform />
              <RotateTransform />
            </TransformGroup>
          </Rectangle.RenderTransform>
          <!-- A BevelBitmapEffect is applied to give the button a "Beveled" look. -->
          <Rectangle.BitmapEffect>
            <BevelBitmapEffect />
          </Rectangle.BitmapEffect>
        </Rectangle>
        <!-- Present Text of the button. -->
        <DockPanel Name="myContentPresenterDockPanel">
          <ContentPresenter x:Name="myContentPresenter" Margin="20"
            Content="{TemplateBinding  Content}" TextBlock.Foreground="Black" />
        </DockPanel>
      </Grid>
    </ControlTemplate>
    </Setter.Value>
    

    Обратите внимание, что свойство Opacity прямоугольника (у которого помимо этого есть свойство x:Name равное «glassCube») имеет значение 0, поэтому при запуске этого примера не отображается «стеклянный» прямоугольник, наложенный сверху. Это сделано для того, чтобы позже добавить в шаблон триггеры для реализации взаимодействия пользователя с кнопкой. Однако можно посмотреть, как выглядит кнопка сейчас, изменив значение Opacity на 1 и запустив приложение. См. следующий рисунок. Прежде чем переходить к следующему шагу, измените значение Opacity обратно на 0.

Создание интерактивности для кнопки

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

Простым способом для добавления интерактивности (при наведении указателя мыши, выходе указателя мыши, нажатии кнопки мыши и т. д.) является определение триггеров в шаблоне или стиле. Чтобы создать Trigger, нужно определить условие для свойства, например: значение свойства IsMouseOver у кнопки равняется true. Затем нужно определить методы задания (действия), которые выполняются, когда условие триггера имеет значение «true».

Создание интерактивности для кнопки

  1. Добавьте в шаблон триггеры: добавьте выделенный фрагмент с разметкой в свой шаблон.

    <Setter.Value>
      <ControlTemplate TargetType="{x:Type Button}">
        <Grid
          ClipToBounds="True">
          <!-- Outer Rectangle with rounded corners. -->
          <Rectangle x:Name="outerRectangle" HorizontalAlignment="Stretch"
          VerticalAlignment="Stretch" Stroke="{TemplateBinding Background}"
          RadiusX="20" RadiusY="20" StrokeThickness="5" Fill="Transparent" />
          <!-- Inner Rectangle with rounded corners. -->
          <Rectangle x:Name="innerRectangle" HorizontalAlignment="Stretch"
            VerticalAlignment="Stretch" Stroke="Transparent"
            StrokeThickness="20"
            Fill="{TemplateBinding Background}" RadiusX="20" RadiusY="20"
          />
          <!-- Glass Rectangle -->
          <Rectangle x:Name="glassCube" HorizontalAlignment="Stretch"
            VerticalAlignment="Stretch"
            StrokeThickness="2" RadiusX="10" RadiusY="10" Opacity="0"
            Fill="{StaticResource MyGlassBrushResource}"
            RenderTransformOrigin="0. 5,0.5">
            <Rectangle.Stroke>
              <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
                <LinearGradientBrush.GradientStops>
                  <GradientStop Offset="0.0" Color="LightBlue" />
                  <GradientStop Offset="1.0" Color="Gray" />
                </LinearGradientBrush.GradientStops>
              </LinearGradientBrush>
            </Rectangle.Stroke>
            <!-- These transforms have no effect as they
                 are declared here.
                 The reason the transforms are included is to be targets
                 for animation (see later). -->
            <Rectangle.RenderTransform>
              <TransformGroup>
                <ScaleTransform />
                <RotateTransform />
              </TransformGroup>
            </Rectangle.RenderTransform>
              <!-- A BevelBitmapEffect is applied to give the button a
                   "Beveled" look. -->
            <Rectangle.BitmapEffect>
              <BevelBitmapEffect />
            </Rectangle. BitmapEffect>
          </Rectangle>
          <!-- Present Text of the button. -->
          <DockPanel Name="myContentPresenterDockPanel">
            <ContentPresenter x:Name="myContentPresenter" Margin="20"
              Content="{TemplateBinding  Content}" TextBlock.Foreground="Black" />
          </DockPanel>
        </Grid>
        <ControlTemplate.Triggers>       <!-- Set action triggers for the buttons and define            what the button does in response to those triggers. -->     </ControlTemplate.Triggers>
      </ControlTemplate>
    </Setter.Value>
    
  2. Добавьте триггеры свойств: добавьте выделенный фрагмент с разметкой в блок ControlTemplate.Triggers:

    <ControlTemplate.Triggers>
      <!-- Set properties when mouse pointer is over the button. -->   <Trigger Property="IsMouseOver" Value="True">     <!-- Below are three property settings that occur when the           condition is met (user mouses over button).   -->     <!-- Change the color of the outer rectangle when user           mouses over it. -->     <Setter Property ="Rectangle.Stroke" TargetName="outerRectangle"       Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}" />     <!-- Sets the glass opacity to 1, therefore, the           glass "appears" when user mouses over it. -->     <Setter Property="Rectangle.Opacity" Value="1" TargetName="glassCube" />     <!-- Makes the text slightly blurry as though you           were looking at it through blurry glass. -->     <Setter Property="ContentPresenter.BitmapEffect"        TargetName="myContentPresenter">       <Setter.Value>         <BlurBitmapEffect Radius="1" />       </Setter.Value>     </Setter>   </Trigger>
    <ControlTemplate.Triggers/>
    

    Нажмите клавишу F5, чтобы запустить приложение и посмотреть проявление эффекта при наведении указателя мыши на кнопку.

  3. Добавьте триггер фокуса: далее можно добавить аналогичные методы задания для обработки ситуации, когда кнопка получает фокус (например, после ее нажатия пользователем).

    <ControlTemplate.Triggers>
      <!-- Set properties when mouse pointer is over the button. -->
      <Trigger Property="IsMouseOver" Value="True">
        <!-- Below are three property settings that occur when the
             condition is met (user mouses over button).  -->
        <!-- Change the color of the outer rectangle when user          mouses over it. -->
        <Setter Property ="Rectangle.Stroke" TargetName="outerRectangle"
          Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}" />
        <!-- Sets the glass opacity to 1, therefore, the          glass "appears" when user mouses over it. -->
        <Setter Property="Rectangle.Opacity" Value="1"       TargetName="glassCube" />
        <!-- Makes the text slightly blurry as though you were          looking at it through blurry glass. -->
        <Setter Property="ContentPresenter.BitmapEffect"       TargetName="myContentPresenter">
          <Setter.Value>
            <BlurBitmapEffect Radius="1" />
          </Setter. Value>
        </Setter>
      </Trigger>
      <!-- Set properties when button has focus. -->   <Trigger Property="IsFocused" Value="true">     <Setter Property="Rectangle.Opacity" Value="1"       TargetName="glassCube" />     <Setter Property="Rectangle.Stroke" TargetName="outerRectangle"       Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}" />     <Setter Property="Rectangle.Opacity" Value="1" TargetName="glassCube" />   </Trigger>
    </ControlTemplate.Triggers>
    

    Нажмите клавишу F5, чтобы запустить приложение, а затем нажмите одну из кнопок. Обратите внимание, что кнопка остается выделенной после нажатия кнопки, так как на ней по-прежнему сохраняется фокус. Если нажать другую кнопку, то фокус получит эта новая кнопка, а прежняя кнопка его потеряет.

  4. Добавление анимаций дляMouseEnterиMouseLeave: далее добавим некоторые варианты анимации для триггеров. Добавьте следующую разметку в любое место блока ControlTemplate.Triggers.

    <!-- Animations that start when mouse enters and leaves button. -->
    <EventTrigger RoutedEvent="Mouse.MouseEnter">
      <EventTrigger.Actions>
        <BeginStoryboard Name="mouseEnterBeginStoryboard">
          <Storyboard>
          <!-- This animation makes the glass rectangle shrink in the X direction. -->
            <DoubleAnimation Storyboard.TargetName="glassCube"
              Storyboard.TargetProperty=
              "(Rectangle.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)"
              By="-0.1" Duration="0:0:0.5" />
            <!-- This animation makes the glass rectangle shrink in the Y direction. -->
            <DoubleAnimation
            Storyboard.TargetName="glassCube"
              Storyboard.TargetProperty=
              "(Rectangle.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleY)"
              By="-0.1" Duration="0:0:0.5" />
          </Storyboard>
        </BeginStoryboard>
      </EventTrigger. Actions>
    </EventTrigger>
    <EventTrigger RoutedEvent="Mouse.MouseLeave">
      <EventTrigger.Actions>
        <!-- Stopping the storyboard sets all animated properties back to default. -->
        <StopStoryboard BeginStoryboardName="mouseEnterBeginStoryboard" />
      </EventTrigger.Actions>
    </EventTrigger>
    

    «Стеклянный» прямоугольник сокращается в размере, когда указатель мыши перемещается над кнопкой и возвращается к нормальному размеру при выходе указателя мыши из области кнопки.

    Здесь есть две анимации, которые активируются, когда указатель мыши находится над кнопкой (вызывается событие MouseEnter). В этих анимациях «стеклянный» прямоугольник уменьшается в размерах по осям X и Y. Обратите внимание на свойства у элементов DoubleAnimation — Duration и By. Свойство Duration указывает, что анимация выполняется в течение половины секунды, а свойство By указывает, что «стеклянный» слой сжимается на 10 %.

    Второй триггер события (MouseLeave) просто останавливает первый. При остановке объекта Storyboard все анимированные свойства возвращаются к значениям по умолчанию. Таким образом, когда пользователь убирает указатель с кнопки, кнопка возвращается к тому виду, который у нее был до перемещения указателя мыши на кнопку. Дополнительные сведения об анимации см. в разделе Общие сведения об эффектах анимации.

  5. Добавьте анимацию при нажатии кнопки: в качестве последнего шага добавим триггер для случая, когда пользователь нажимает кнопку. Добавьте следующую разметку в любое место блока ControlTemplate.Triggers:

    <!-- Animation fires when button is clicked, causing glass to spin.  -->
    <EventTrigger RoutedEvent="Button.Click">
      <EventTrigger.Actions>
        <BeginStoryboard>
          <Storyboard>
            <DoubleAnimation Storyboard.TargetName="glassCube"
              Storyboard.TargetProperty=
              "(Rectangle.RenderTransform).(TransformGroup.Children)[1].(RotateTransform.Angle)"
              By="360" Duration="0:0:0. 5" />
          </Storyboard>
        </BeginStoryboard>
      </EventTrigger.Actions>
    </EventTrigger>
    

    Нажмите клавишу F5, чтобы запустить приложение, а затем нажмите одну из кнопок. При нажатии кнопки «стеклянный» прямоугольник вращается.

Сводка

В этом пошаговом руководстве были выполнены следующие практические задания:

  • Создание объекта Style в соответствии с целевым типом объекта (Button).

  • Управление основными свойствами кнопок во всем приложении с помощью объекта Style.

  • Создание таких ресурсов, как градиенты, используемые в соответствии со значениями свойств из методов задания Style.

  • Настройка внешнего вида кнопок во всем приложении путем применения к кнопкам шаблона.

  • Настройка поведения кнопок в ответ на действия пользователя (такие как MouseEnter, MouseLeave и Click) с эффектами анимации.

См. также раздел

  • Создание кнопки с помощью Microsoft Expression Blend
  • Стилизация и использование шаблонов
  • Общие сведения об эффектах анимации
  • Общие сведения о закраске сплошным цветом и градиентом
  • Общие сведения об эффектах для точечных рисунков

Создание кнопок в Adobe Animate

Кнопки в Animate (ранее программа называлась Flash Professional) – это символы, содержащие 4 кадра. Каждый кадр символа кнопки представляет свое состояние кнопки: «Не нажата», «Наведен курсор», «Нажата» и «Нажатие». Эти состояния определяют, как кнопка выглядит, когда курсор мыши находится над ней или когда пользователь нажимает кнопку. Этот документ содержит пояснения о том, как создать стандартные кнопки и кнопки с дополнительными функциями.

Создание стандартной кнопки

  1. Выберите пункт меню «Вставка» > «Создать символ» или нажмите клавиши Control+F8 (Windows) или Command+F8 (Macintosh).
    Примечание: В программе Flash 3 и более ранних версиях отмените выбор всех элементов в рабочей области и выберите пункт меню «Вставка» > «Создать символ».

  2. В диалоговом окне «Параметры символа» введите имя нового символа кнопки и выберите вариант «Кнопка с параметрами поведения. Нажмите кнопку «ОК». 

    Flash переключается в режим редактирования символов. Заголовок временной шкалы изменяется для отображения четырех последовательных кадров: «Не нажата», «Наведен курсор», «Нажата» и «Нажатие». Первый кадр кнопки в отпущенном состоянии (Не нажата) представляет собой пустой ключевой кадр.

  3. Чтобы создать изображение кнопки в состоянии «Не нажата», при помощи инструментов рисования импортируйте изображение или поместите в рабочую область другой экземпляр символа. Внутри кнопки можно использовать любой фрагмент ролика или графический символ. Однако нельзя использовать другую кнопку. Для создания анимированной кнопки можно использовать символы клипа.

  4. Выберите второй кадр с меткой «Наведен курсор» и выберите пункт меню «Вставка» > «Ключевой кадр». в рабочей области появляется изображение кнопки из первого кадра.

  5. Измените изображение кнопок для состояния «Наведен курсор». Повторите шаги 4 и 5 для кадров состояний «Нажата» и «Нажатие».
    Примечание. Кадр «Нажатие» не отображается в рабочей области при воспроизведении, но он задает область кнопки, реагирующую при нажатии на нее. Убедитесь, что изображением для кадра «Нажатие» выступает сплошная область, достаточно большая, чтобы охватить все графические элементы в кадрах «Не нажата», «Наведен курсор» и «Нажата». Область также может выходить за границы видимой кнопки. Если вы не задали область нажатия, то для ее определения используется изображение кнопки в кадре «Не нажата».

  6. После того, как вы заполнили изображения четырех состояний кнопок, выполните команду «Редактирование» > «Редактировать фильм», чтобы выйти из режима редактирования символа.

  7. Откройте окно «Библиотека» с помощью команды меню «Окно» > «Библиотека». Найдите кнопку на панели «Библиотека», а затем перетащите символ кнопки из библиотеки в рабочую область. На этом шаге в клипе создается экземпляр кнопки.

Для получения информации о назначении действия экземпляру кнопки обратитесь к документации, соответствующей версии Animate, которую вы используете. В документации указано следующее:

Назначьте простое действие кнопке (Flash 5)

  1. В режиме «Редактирование клипа» выберите экземпляр кнопки, созданный на шаге 7, описанном выше.

  2. Воспользуйтесь командой «Окно» > «Действия» для открытия панели «Действия».

  3. В списке в левой части панели выберите категорию «Основные действия» для отображения основных действий.

  4. Чтобы назначить действие, выполните одно из следующих действий.

    • Дважды щелкните действие в категории «Основные действия».
    • Перетащите действие из категории «Основные действия» из левой части панели в правую.
    • Нажмите кнопку «Добавить» (+) и выберите нужное действие во всплывающем меню.
    • Используйте сочетание клавиш.
  5. Если выбранное действие содержит какие-либо связанные параметры, то они отображаются на панели «Параметры» в нижней части палитры «Действия». (Если панель «Параметры» не отображается, щелкните на треугольнике в правом нижнем углу панели.) Выберите или введите параметры, соответствующие данному действию. Например, действие gotoAndPlay, показанное ниже, содержит три параметра: Сцена,Тип, Кадр и параметр для Перехода к воспроизведению.

Назначьте простое действие кнопке (Flash 4 и более ранние версии)

  1. В режиме «Редактирование клипа» выберите экземпляр кнопки, созданный на шаге 7, описанном выше.

  2. Убедитесь, что флажок «Разрешить кнопки» в меню «Управление» не установлен.

  3. Дважды щелкните на кнопке, чтобы открыть диалоговое окно «Свойства экземпляра».
    Примечание. В программе Flash 2 это диалоговое окно было свойствами ссылки: Диалоговое окно «Кнопка».

  4. Назначьте действие, т. е. выберите вкладку «Действия» в диалоговом окне «Свойства экземпляра». Затем нажмите кнопку со знаком «плюс» (+) и дважды щелкните соответствующее действие.
    Примечание. В Программе Flash 2 назначьте действие с помощью всплывающего меню «Действия» в диалоговом окне «Свойства ссылки». Диалоговое окно «Кнопка». Только одно действие можно назначить кнопке.

  5. Убедитесь, что пункт «Разрешить кнопки» активирован (установлен флажок рядом с ним) в меню «Управление».

  6. Если выбранное действие содержит какие-либо связанные параметры, то они отображаются на панели «Параметры» в правой части палитры «Действия». Выберите или введите параметры, соответствующие данному действию.

Создание кнопок с дополнительными функциями

После того как вы освоили простую кнопку, попробуйте работать с более сложными кнопками Animate. Можно создать невидимые кнопки, кнопки с анимированными состояниями или кнопки с эффектами прокрутки. 

При разработке сложных кнопок крайне важно понимать состояние нажатия кнопок. Активную область кнопки определяют форма и область кнопки. Чтобы поэкспериментировать с состоянием кнопки «Нажатие», выполните следующие действия:

  1. Добавьте кнопку из общих библиотек в рабочую область. Отредактируйте кнопку.

  2. Выделите кадр с состоянием кнопки «Нажатие» и вставьте ключевой кадр. Проверяйте поведение кнопки в клипе.

  3. Значительно измените размер объекта в состоянии «Нажатие» и попробуйте работу кнопки еще раз.

  4. Удалите ключевой кадр в состоянии «Нажатие» и проверьте работу кнопки.

  5. Обратите внимание на эффект, когда курсор мыши располагается над кнопкой, проверьте состояния «Нажата», «Не нажата» и «Наведен курсор», когда кнопка включена. 

Невидимые кнопки

Можно оставить состояния кнопки «Не нажата», «Наведен курсор», «Нажата» пустыми. Если эти состояния пустые, задайте состояние «Нажатие» так, чтобы оно было заполнено содержимым.

Если состояние кнопки «Не нажата» – пустое или невидимое, кнопка представляется в рабочей области синей фигурой. Эта фигура эквивалентна содержимому в следующем ключевом кадре внутри кнопки. Эту голубую фигуру в конечном фильме не будет видно.

Кнопки с анимированными состояниями

Чтобы в Animate создать анимированные кнопки, разместите клип на том состоянии кнопки, которое нужно анимировать.

  1. Создайте клип для каждого состояния кнопки, которое вы хотите анимировать.

  2. Создайте кнопку.

  3. Расположите клипы в состояниях кнопок, чтобы анимировать их.

  4. Расположите кнопку в рабочей области. 
    Примечание. Клипы невозможно протестировать в редакторе Animate. Чтобы проверить новую кнопку, выберите команду «Управление» > «Тестировать клип» или экспортируйте клип в формате SWF-файла.

Прокрутка в одной области клипа влияет на другую область клипа

Для создания этого эффекта, переместите элементы состояния «Нажатие» в другую часть рабочей области, чем элементы в состоянии кнопок «Курсор наведен». Такой метод подходит для эффектов «простая прокрутка». Активная зона находится в другом месте рабочей области, чем эффект прокрутки.

Дополнительная информация

Хороший способ побольше узнать о кнопках и их разработке – это изучить кнопки, включенные в Animate в качестве примеров. В версии 5 этих примеры кнопок доступны в меню «Окна» > «Общие библиотеки» > «Кнопки». Если вы используете версию 4, можете получить доступ к этим кнопкам, выбрав пункт «Библиотеки» > «Кнопки». Для второй версии библиотеки примеров кнопок доступны в меню Xtras.

Полная инструкция по созданию кнопки также доступна в Учебных занятиях, поставляемых с версией 5. Для получения доступа к этим занятиям выберите «Справка» > «Учебные занятия» > «06 Кнопки во Flash».

Вход в учетную запись

Войти

Управление учетной записью

Создание кнопки «Купить» · Shopify Справочный центр

Эта страница была напечатана 08 июня 2023 г. Актуальную версию можно найти на странице https://help.shopify.com/en/manual/online-sales-channels/buy-button/create-buy-button.

Примечание

С вас будет взиматься плата за сторонние транзакции каждый раз, когда клиент совершает покупку с помощью кнопки «Купить», если вы также не активируете Shopify Payments.

После того, как вы добавите канал продаж «Кнопка покупки» в свою админку Shopify, вы можете создать кнопку «Купить» для продукта или коллекции.

После создания кнопки «Купить» вы копируете автоматически сгенерированный код, а затем добавляете код на веб-страницу или запись в блоге, где вы хотите, чтобы кнопка отображалась. Например, вы можете добавить кнопку «Купить» в свой блог WordPress или на веб-сайт Squarespace.

Внешний вид кнопки «Купить» нельзя изменить после того, как вы встроите ее на свой веб-сайт. Если вы хотите изменить его, то вы должны создать новую кнопку в канале и заменить исходный код новым кодом.

На этой странице

  • Настройка кнопок «Купить»
  • Создать кнопку «Купить» для одного продукта
  • Создать кнопку «Купить» для коллекции

Настройка кнопок «Купить»

Вы можете настроить внешний вид и поведение кнопки «Купить»:

  • его цвет
  • его размер
  • его шрифт
  • действие, которое происходит при нажатии кнопки
  • , открывается ли касса в новом окне браузера

При настройке кнопки вы можете предварительно просмотреть изменения. Вы можете проверить поведение кнопки «Купить», щелкнув предварительный просмотр.

Стиль макета

Вы можете выбрать макет кнопки «Купить».

Доступные раскладки для кнопок «Купить»
Базовый Выберите этот макет, чтобы добавить кнопку «Купить» без изображения продукта. Возможно, вы захотите сделать это, если вы уже выставляете свои продукты в других местах в Интернете, но просто хотите добавить кнопку для совершения покупки.
Классический Выберите этот макет, чтобы отображать изображение продукта и цену рядом с кнопкой «Купить». Этот макет удобен для быстрого предварительного просмотра продукта, например, в записи блога.
Полный обзор Выберите этот макет, чтобы отображать изображение продукта, цену и описание рядом с кнопкой «Купить». Этот макет имитирует страницу сведений о продукте в вашем интернет-магазине.

Действия кнопки «Купить»

При создании кнопки «Купить» можно выбрать действие, которое будет выполняться при нажатии кнопки.

Примечание

Если у вас есть более одной кнопки «Купить» на странице, вам нужно настроить их все на одно и то же действие.

Если кнопка «Купить» предназначена для коллекции, то действие применяется к каждому продукту в коллекции.

  • Добавить товар в корзину добавить товар в корзину. Покупатели могут продолжить покупки и добавить в корзину дополнительные товары.
  • Прямо к кассе направляет покупателя прямо к кассе, где он может приобрести товар. Клиенты не могут добавлять дополнительные продукты в свой заказ.
  • Открыть сведения о продукте отображает кнопку Просмотреть продукт . Когда покупатель нажимает кнопку, он может увидеть описание продукта, выбрать любые доступные варианты продукта и добавить продукт в корзину. Если у продукта есть несколько изображений продукта, они также отображаются.

    Этот параметр недоступен при выборе макета Полноэкранный , поскольку макет Полноэкранный уже отображает все сведения о продукте.

Вы также можете выбрать, будет ли касса открываться в новом окне браузера или на той же вкладке, что и ваш веб-сайт. Поведение по умолчанию заключается в том, что касса открывается в новом окне.

Купить Внешний вид кнопки

  • Стиль кнопки включает форму, цвет и типографику для части кнопки «Купить».
  • Макет В зависимости от выбранного стиля макета можно настроить такие параметры, как выравнивание кнопок, размер изображения, текст кнопки, шрифт, цвет и размер.
  • Корзина для покупок включает варианты текста и цвета для встроенной корзины для покупок. Вы также можете включить и настроить метку для поля примечание к заказу . Вы можете использовать примечания к заказу для сбора специальных инструкций от клиентов о том, как подготовить и доставить заказ. Поле Дополнительная информация позволяет вам передать сообщение своим клиентам.

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

  • Подробное всплывающее окно включает настройки для всплывающего окна сведений о продукте. Вы можете настроить текст кнопки, отображать или нет поле количества, цвета, используемые для фона и меток, а также шрифт и размер шрифта меток. Вы можете редактировать эти настройки, только если вы выбрали Открыть сведения о продукте в качестве действия кнопки.

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

Прежде чем создавать кнопку «Купить» для продукта, вы должны добавить этот продукт в свою панель администратора Shopify и сделать его доступным для канала продаж кнопки «Купить».

Шагов:
  1. В админке Shopify нажмите Настройки > Приложения и каналы продаж .

  2. На странице Приложения и каналы продаж нажмите Кнопка «Купить» .

  3. Щелкните Открыть канал продаж .

  4. Нажмите Создать кнопку «Купить» .

  5. Нажмите кнопку «Купить продукт» .

  6. Выберите продукт из своего каталога или воспользуйтесь поиском, чтобы найти продукт. Нажмите Выберите .

  7. Необязательно: настройте кнопку «Купить».

    1. Если у вашего продукта есть варианты, выберите Все варианты или выберите вариант, который вы хотите включить.
    2. Выберите стиль макета и действие, которое происходит, когда покупатель нажимает кнопку. Вы также можете настроить внешний вид кнопки.
    3. По умолчанию при оформлении заказа открывается новое окно, но вы можете открыть оформление заказа на той же вкладке браузера, что и ваш веб-сайт. Нажмите Дополнительные настройки > Перенаправление на той же вкладке .
  8. Нажмите Далее .

  9. Нажмите Скопируйте код .

  10. Откройте редактор HTML для веб-страницы, на которой вы хотите отобразить кнопку «Купить». См. Добавление кода кнопки «Купить» в HTML 9.0220 .

  11. Вставьте код в HTML-код там, где вы хотите, чтобы кнопка «Купить» отображалась, а затем сохраните изменения.

  1. В приложении Shopify нажмите Store .

  2. В разделе Канал продаж нажмите кнопку Купить .

  3. Нажмите Создать кнопку «Купить» .

  4. Нажмите кнопку «Купить продукт» .

  5. Выберите продукт из своего каталога или воспользуйтесь поиском, чтобы найти продукт. Нажмите Выберите .

  6. Необязательно: нажмите Настроить .

    1. Если ваш продукт имеет несколько вариантов, выберите Все варианты или выберите вариант из раскрывающегося списка.
    2. Выберите стиль макета и действие, которое происходит, когда покупатель нажимает кнопку. Вы также можете настроить внешний вид кнопки.
    3. По умолчанию при оформлении заказа открывается новое окно, но вы можете открыть оформление заказа на той же вкладке браузера, что и ваш веб-сайт. Нажмите Расширенные настройки > Перенаправление на той же вкладке .
    Наконечник

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

  7. Нажмите Готово .

  8. Нажмите Скопируйте код .

  9. Откройте редактор HTML для веб-страницы, на которой вы хотите отобразить кнопку «Купить». См. Добавление кода кнопки «Купить» в HTML .

  10. Вставьте код в HTML-код там, где вы хотите, чтобы кнопка «Купить» отображалась, а затем сохраните изменения.

  1. В приложении Shopify нажмите Store .

  2. В разделе Канал продаж нажмите кнопку Купить .

  3. Нажмите Создать кнопку «Купить» .

  4. Нажмите кнопку «Купить продукт» .

  5. Выберите продукт из своего каталога или воспользуйтесь поиском, чтобы найти продукт. Нажмите Выберите .

  6. Дополнительно: нажмите Настройка .

    1. Если ваш продукт имеет несколько вариантов, выберите Все варианты или выберите вариант из раскрывающегося списка.
    2. Выберите стиль макета и действие, которое происходит, когда покупатель нажимает кнопку. Вы также можете настроить внешний вид кнопки.
    3. По умолчанию при оформлении заказа открывается новое окно, но вы можете открыть оформление заказа на той же вкладке браузера, что и ваш веб-сайт. Щелкните Дополнительные параметры > Редирект в той же вкладке .
    Наконечник

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

  7. Нажмите Готово .

  8. Нажмите Скопируйте код .

  9. Откройте редактор HTML для веб-страницы, на которой вы хотите отобразить кнопку «Купить». См. Добавление кода кнопки «Купить» в HTML .

  10. Вставьте код в HTML-код там, где вы хотите, чтобы кнопка «Купить» отображалась, а затем сохраните изменения.

Создать кнопку «Купить» для коллекции

Когда вы создаете кнопку «Купить» для коллекции, вы фактически создаете кнопку для каждого продукта в коллекции.

При создании кнопки «Купить» вы выбираете стиль макета и настраиваете цвет, текст и внешний вид кнопки, а также действие, которое происходит, когда покупатель нажимает на нее. Узнайте больше о настройке кнопок «Купить».

Перед созданием кнопки «Купить» для коллекции необходимо иметь:

  • Добавлены продукты в ваш Shopify Admin,
  • Сделали продукты доступными для канала продаж кнопки «Купить».
  • Создал коллекцию.
Шагов:
  1. В админке Shopify нажмите Настройки > Приложения и каналы продаж .

  2. На странице Приложения и каналы продаж нажмите Кнопка «Купить» .

  3. Нажмите Открыть канал продаж .

  4. Нажмите Создать кнопку «Купить» .

  5. Нажмите кнопку «Купить коллекцию» .

  6. Выберите коллекцию или воспользуйтесь поиском, чтобы найти коллекцию. Нажмите Выберите .

  7. Необязательно: настройте кнопку «Купить».

    1. Выберите действие, которое происходит, когда покупатель нажимает кнопку. Вы также можете настроить внешний вид кнопки.
    2. По умолчанию при оформлении заказа открывается новое окно, но вы можете открыть оформление заказа на той же вкладке браузера, что и ваш веб-сайт. Нажмите Расширенные настройки > Перенаправление на той же вкладке .
  8. Нажмите Далее .

  9. Нажмите Скопируйте код .

  10. Откройте редактор HTML для веб-страницы, на которой вы хотите отобразить кнопку «Купить». См. Добавление кода кнопки «Купить» в HTML .

  11. Вставьте код в HTML-код там, где вы хотите, чтобы кнопка «Купить» отображалась, а затем сохраните изменения.

  1. В приложении Shopify нажмите Store .

  2. В разделе Канал продаж нажмите кнопку Купить .

  3. Нажмите Создать кнопку «Купить» .

  4. Нажмите кнопку «Купить коллекцию» .

  5. Выберите коллекцию или воспользуйтесь поиском, чтобы найти коллекцию. Нажмите Выберите .

  6. Необязательно: нажмите Настроить .

    1. Выберите действие, которое происходит, когда покупатель нажимает кнопку. Вы также можете настроить внешний вид кнопки.
    2. По умолчанию при оформлении заказа открывается новое окно, но вы можете открыть оформление заказа на той же вкладке браузера, что и ваш веб-сайт. Нажмите Дополнительные настройки > Перенаправление на той же вкладке .
    Наконечник

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

  7. Нажмите Готово .

  8. Нажмите Скопируйте код .

  9. Откройте редактор HTML для веб-страницы, на которой вы хотите отобразить кнопку «Купить». См. Добавление кода кнопки «Купить» в HTML .

  10. Вставьте код в HTML-код там, где вы хотите, чтобы кнопка «Купить» отображалась, а затем сохраните изменения.

  1. В приложении Shopify нажмите Store .

  2. В Раздел «Канал продаж », нажмите Кнопка «Купить» .

  3. Нажмите Создать кнопку «Купить» .

  4. Нажмите кнопку «Купить коллекцию» .

  5. Выберите коллекцию или воспользуйтесь поиском, чтобы найти коллекцию. Нажмите Выберите .

  6. Необязательно: нажмите Настроить .

    1. Выберите действие, которое происходит, когда покупатель нажимает кнопку. Вы также можете настроить внешний вид кнопки.
    2. По умолчанию при оформлении заказа открывается новое окно, но вы можете открыть оформление заказа на той же вкладке браузера, что и ваш веб-сайт. Нажмите Дополнительные настройки > Перенаправление на той же вкладке .
    Наконечник

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

  7. Нажмите Готово .

  8. Нажмите Скопируйте код .

  9. Откройте редактор HTML для веб-страницы, на которой вы хотите отобразить кнопку «Купить». См. Добавление кода кнопки «Купить» в HTML .

  10. Вставьте код в HTML-код там, где вы хотите, чтобы кнопка «Купить» отображалась, а затем сохраните изменения.

Как создавать кнопки с помощью Animate

Руководство пользователя Отмена

Поиск

Основные шаги по созданию кнопок

  1. Решите, какой тип кнопки лучше всего соответствует вашим потребностям.

    Символ кнопки

    Большинство людей выбирают символы кнопок из-за их гибкости. Символы кнопок содержат специальную внутреннюю шкалу времени для состояний кнопок. Вы можете легко создавать визуально различные состояния Up, Down и Over. Символы кнопок также автоматически меняют свое состояние, реагируя на действия пользователя.

    Кнопка видеоклипа

    Символ фрагмента ролика можно использовать для создания сложных эффектов кнопок. Символы фрагмента ролика могут содержать содержимое практически любого типа, включая анимацию. Однако символы фрагментов ролика не имеют встроенных состояний Up, Down и Over. Вы сами создаете эти состояния, используя ActionScript. Недостатком является то, что файлы видеоклипов больше, чем файлы кнопок.

    Компонент кнопки ActionScript

    Используйте компонент кнопки, если вам нужна только стандартная кнопка или переключатель, и вы не хотите его настраивать. Кнопочные компоненты ActionScript 2.0 и 3.0 поставляются со встроенным кодом, позволяющим изменять состояние. Таким образом, вам не нужно определять внешний вид и поведение состояний кнопок. Просто перетащите компонент на рабочую область.

    • Кнопочные компоненты ActionScript 3. 0 допускают некоторую настройку. Вы можете привязать кнопку к другим компонентам, а также совместно использовать и отображать данные приложения. У них есть встроенные функции, такие как поддержка специальных возможностей. Доступны компоненты Button, RadioButton и CheckBox.

    • Компоненты кнопки ActionScript 2.0 не настраиваются. Компонент позволяет изменять состояние.

  2. Определите состояния кнопок.

    Верхний кадр

    Внешний вид кнопки, когда пользователь не взаимодействует с ней.

    Над рамкой

    Внешний вид кнопки, когда пользователь собирается ее выбрать.

    Нижняя рама

    Внешний вид кнопки при выборе ее пользователем.

    Попадание в кадр

    Область, реагирующая на клики пользователя. Определение этого кадра Hit не является обязательным. Если ваша кнопка маленькая или ее графическая область не является непрерывной, определение этого фрейма может быть полезным.

    • Содержимое кадра попадания не отображается в рабочей области во время воспроизведения.

    • Графика для кадра Hit представляет собой сплошную область, достаточно большую, чтобы охватить все графические элементы кадров Up, Down и Over.

    • Если вы не укажете кадр Hit, будет использовано изображение для состояния Up.

      Вы можете создать кнопку, которая будет реагировать на нажатие или пролистывание другой области сцены (также называемое непересекающимся прокруткой). Поместите изображение кадра Hit в другое место, чем другие графические изображения рамки кнопки.

  3. Связать действие с кнопкой.

    Чтобы что-то происходило, когда пользователь нажимает кнопку, вы добавляете код ActionScript на временную шкалу. Поместите код ActionScript в те же рамки, что и кнопки. Панель «Фрагменты кода» содержит предварительно написанный код ActionScript 3.0 для многих распространенных кнопок. См. раздел Добавление интерактивности с помощью фрагментов кода.

     ActionScript 2.0 несовместим с ActionScript 3.0. Если ваша версия Animate использует ActionScript 3.0, вы не сможете вставить код ActionScript 2.0 в кнопку (и наоборот). Прежде чем вставлять ActionScript из другого источника в свои кнопки, убедитесь, что версия совместима.

Создание кнопки с символом кнопки

Чтобы сделать кнопку интерактивной, вы помещаете экземпляр символа кнопки на рабочую область и назначаете действия экземпляру. Вы назначаете действия корневой временной шкале FLA-файла. Не добавляйте действия на временную шкалу символа кнопки. Чтобы добавить действия на временную шкалу кнопки, используйте вместо нее кнопку фрагмента ролика.

  1. Выберите «Правка» > «Отменить выбор всего» или щелкните пустую область рабочей области, чтобы убедиться, что в рабочей области ничего не выбрано.

  2. Выберите «Вставка» > «Новый символ».

  3. В диалоговом окне «Создать новый символ» введите имя. В качестве Типа символа выберите Кнопка.

    Animate переключается в режим редактирования символов. На временной шкале отображаются четыре последовательных кадра с пометками «Вверх», «Над», «Вниз» и «Попадание». Первый кадр, Up, является пустым ключевым кадром.

  4. Чтобы создать изображение кнопки состояния «Вверх», выберите кадр «Вверх» на временной шкале. Затем используйте инструменты рисования, импортируйте графику или поместите экземпляр другого символа в рабочую область.

    Внутри кнопки можно использовать графические символы или символы фрагмента ролика, но нельзя использовать другой символ кнопки.

  5. На временной шкале нажмите на кадр, а затем выберите «Вставка» > «Временная шкала» > «Ключевой кадр».

    Animate вставляет ключевой кадр, который дублирует содержимое предыдущего кадра Up.

  6. Не снимая выделения с рамки Over, измените или отредактируйте изображение кнопки в рабочей области, чтобы создать желаемый внешний вид для состояния Over.

  7. Повторите шаги 5 и 6 для кадра Down и дополнительного кадра Hit.

  8. Чтобы назначить звук состоянию кнопки, выберите кадр этого состояния на временной шкале и выберите «Окно» > «Свойства». Затем выберите звук в меню «Звук» инспектора свойств. Только звуки, которые вы уже импортировали, отображаются в меню «Звук».

  9. Когда закончите, выберите «Правка» > «Редактировать документ». Animate возвращает вас к основной временной шкале вашего FLA-файла. Чтобы создать экземпляр кнопки, которую вы создали в рабочей области, перетащите символ кнопки с панели «Библиотека» в рабочую область.

  10. Чтобы проверить функциональность кнопки, используйте команду «Управление» > «Проверить». Вы также можете просмотреть состояния символа кнопки в рабочей области, выбрав «Управление» > «Включить простые кнопки». Эта команда позволяет вам увидеть состояния символа кнопки вверху, вверху и внизу, не используя Control > Test.

Включение, редактирование и тестирование символов кнопок

По умолчанию Animate отключает символы кнопок, когда вы их создаете. Выберите и включите кнопку, чтобы увидеть, как она реагирует на события мыши. Лучше всего отключить кнопки во время работы и дать им возможность быстро проверить их поведение.

  • Чтобы выбрать кнопку, используйте инструмент «Выделение», чтобы перетащить прямоугольник выделения вокруг кнопки.

  • Чтобы включить или отключить кнопки в рабочей области, выберите «Управление» > «Включить простые кнопки». Эта команда действует как переключатель между двумя состояниями.

  • Чтобы переместить кнопку, используйте клавиши со стрелками.

  • Чтобы изменить кнопку, используйте инспектор свойств. Если он не отображается, выберите «Окна» > «Свойства».

  • Чтобы протестировать кнопку в среде разработки, выберите «Управление» > «Включить простые кнопки».

  • Чтобы проверить кнопку в Flash Player, выберите «Управление» > «Проверить фильм» [или «Проверить сцену»] > «Проверить». Этот метод — единственный способ протестировать кнопки мувиклипов.

  • Чтобы протестировать кнопку на панели предварительного просмотра библиотеки, выберите кнопку в библиотеке и нажмите кнопку «Воспроизвести».

Кнопки устранения неполадок

Используйте эти ресурсы для устранения распространенных проблем с кнопки:

Дополнительные ресурсы кнопок

Следующие технические примечания содержат инструкции для некоторых конкретных сценарии кнопок:

  • TechNote: Как создать новую кнопку (Adobe.com)

  • Техническое примечание: создание дополнительных кнопок (Adobe.