GUI(Graphical User Interface:グラフィカル・ユーザー・インターフェース)では、ボタン、リスト、チェック・ボックスなどのグラフィカル・コントロールを使用してプログラムを操作します。コントロールをアクションに応答できるようにするには、イベント・ドリブン・プログラミングが必要です。この手法では、各コントロールがイベントと呼ばれるアクションに対する独自の応答を持ちます。イベントは、ボタンが押された、リストのアイテムが選択された、チェック・ボックスがチェックされたなど、何かが起こったことのプログラムに対する通知です。
各コントロールの各アクションすなわち各イベントは、独自のロジックを持つことができるので、プログラムでは、各コントロールの各ユーザーのアクションに個別に対応できます。これにより、イベント・ドリブン・プログラムはアクションに動的に応答できます。
イベントをトリガーすると、イベントに関連するロジックだけが実行されます。これにより、イベントは任意の順序で実行できます。このためにイベント・ドリブン・プログラムは非常に柔軟になっています。
GUIで使用されるコントロールの多くは、優れた組み込み機能を持っています。ユーザーと情報を交換したり、データを表示したりデータ間を移動することができます。結果として、豊富なビジュアルの通信手段を持つコンパクトなアプリケーションを作成できます。このようなアプリケーションは学習しやすく簡単に使用できます。