tcolorbox:: Beamer で onslide を使用して新しい tcolorbox を定義する

tcolorbox:: Beamer で onslide を使用して新しい tcolorbox を定義する

どのように新しい定義をtcolorbox使用して次のことを達成するために\onslide、しかし、 \onslideすべてのtcolorbox

スライド 1: 見出し

スライド2: 上部のテキスト

スライド3: 下部テキスト

\documentclass{beamer}
\usepackage{tcolorbox}

\begin{document}
\begin{frame}
\begin{tcolorbox}[title={Valency = ?},
colframe=green!50!black,
colback=green!50!black!10!white,
]
\onslide<2->{Hydrogen, H}
\tcblower
\onslide<3>{1}
\end{tcolorbox}
\end{frame}
\end{document}

答え1

これを実現する 1 つの方法は、必要に応じて醜い「ジャンプ」を伴いますが、only=<1->{...}下のボックスなどやセグメンテーション ラインなどを非表示にする関連オプションを指定したoverlay ステートメントを使用することです。

\documentclass{beamer}
\usepackage[most]{tcolorbox}

\begin{document}
\begin{frame}
\begin{tcolorbox}[only=<1->{title={Valency = ?}},only=<1-2>{lowerbox=ignored,segmentation hidden},
colframe=green!50!black,
colback=green!50!black!10!white,
]
\onslide<2->{Hydrogen, H}
\onslide<3->{%
\tcblower
1}
\end{tcolorbox}
\end{frame}
\end{document}

ラッパーコマンドを使用する場合:

\documentclass{beamer}
\usepackage[most]{tcolorbox}

\NewDocumentCommand{\MyNiceBox}{+O{}+m+m+m}{%
  \begin{tcolorbox}[only=<1->{title={#2}},only=<1-2>{lowerbox=ignored,segmentation hidden},
    colframe=green!50!black,
    colback=green!50!black!10!white,
    #1]
    \onslide<2->{#3}
    \onslide<3->{%
      \tcblower
      #4}
  \end{tcolorbox}%
}


\begin{document}
\begin{frame}
\MyNiceBox{Valency = ?}{Hydrogen, H}{1}
\end{frame}
\end{document}

ここに画像の説明を入力してください

ここに画像の説明を入力してください

ここに画像の説明を入力してください

関連情報