Bei der Verwendung von multicols für diesen Zweck kann es übrigens zu Problemen kommen, wenn das erste Listing nicht mehr komplett auf die Seite passt:
Code:
\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{multicol}
\usepackage{listings}
%\usepackage{pst-pdf}
\usepackage{xcolor}% Damit kann man sich pst-pdf für die Farbeinstellung sparen.
\usepackage{lipsum}
\begin{document}
\lstset{language=Java, %Setzt die Sprache
basicstyle=\scriptsize, %Setzt den Standardstil und Schriftgröße
keywordstyle=\color{blue!80!black!100}, %Setzt den Stil für Schlüsselwörter
identifierstyle=, % Identifier bekommen keine gesonderte formatierung
commentstyle=\color{green!50!black!100},% Stil für Kommentare
stringstyle=\ttfamily,% Stil für Strings (gekennzeichnet mit "String")
breaklines=true,% Zeilen werden umgebrochen
numbers=left,% Zeilennummern links
% numberstyle=\small,% Stil für die Seitennummern oder auch \tiny
frame=single,% Rahmen
backgroundcolor=\color{blue!5}, % Hintergrundfarbe
showstringspaces=false,
literate={Ö}{{\"O}}1 {Ä}{{\"A}}1 {Ü}{{\"U}}1 {ß}{{\ss}}2 {ü}{{\"u}}1 {ä}{{\"a}}1 {ö}{{\"o}}1 {µ}{\textmu}1,
tabsize=4
}
\lipsum[1-5]
\setlength{\columnsep}{2em}
\begin{multicols}{2}
\begin{lstlisting}[caption={Methode \textit{run()}}, captionpos=t]
public void run() {
addElements();
defineActionListener();
setGetSize();
setVisible(true);
}
\end{lstlisting}
\columnbreak
\lstset{language=Java}
\begin{lstlisting}[caption={Klasse \texttt{Main}}, captionpos=t]
public class Main {
public static void main(String[] args){
Initialisation start = new Initialisation();
start.run();
start.setLocation(50, 50);
}
}
\end{lstlisting}
\end{multicols}
\end{document}
Durch Verwendung einer zusätzlichen minipage oder von zwei minipages an Stelle von multicol kann man in diesem Fall wenigstens den falschen Umbruch vermeiden:
Code:
\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{listings}
\usepackage{xcolor}
\usepackage{lipsum}
\begin{document}
\lstset{language=Java, %Setzt die Sprache
basicstyle=\scriptsize, %Setzt den Standardstil und Schriftgröße
keywordstyle=\color{blue!80!black!100}, %Setzt den Stil für Schlüsselwörter
identifierstyle=, % Identifier bekommen keine gesonderte formatierung
commentstyle=\color{green!50!black!100},% Stil für Kommentare
stringstyle=\ttfamily,% Stil für Strings (gekennzeichnet mit "String")
breaklines=true,% Zeilen werden umgebrochen
numbers=left,% Zeilennummern links
% numberstyle=\small,% Stil für die Seitennummern oder auch \tiny
frame=single,% Rahmen
backgroundcolor=\color{blue!5}, % Hintergrundfarbe
showstringspaces=false,
literate={Ö}{{\"O}}1 {Ä}{{\"A}}1 {Ü}{{\"U}}1 {ß}{{\ss}}2 {ü}{{\"u}}1 {ä}{{\"a}}1 {ö}{{\"o}}1 {µ}{\textmu}1,
tabsize=4
}
\lipsum[1-5]
\noindent
\begin{minipage}[t]{.45\textwidth}% Ohne [t] für vertikale Zentrierung
\begin{lstlisting}[caption={Methode \textit{run()}}, captionpos=t]
public void run() {
addElements();
defineActionListener();
setGetSize();
setVisible(true);
}
\end{lstlisting}
\end{minipage}\hfill
\begin{minipage}[t]{.45\textwidth}% Ohne [t] für vertikale Zentrierung
\lstset{language=Java}
\begin{lstlisting}[caption={Klasse \texttt{Main}}, captionpos=t]
public class Main {
public static void main(String[] args){
Initialisation start = new Initialisation();
start.run();
start.setLocation(50, 50);
}
}
\end{lstlisting}
\end{minipage}
\end{document}
Einen optimalen Umbruch erhält man damit allerdings auch nicht automatisch, so dass es vielleicht ein Verbesserung darstellt, vielleicht auch nicht. Ich wollte es lediglich als mögliche Alternative erwähnen.
Lesezeichen