# TCastleWindow missing?

**URL:** <https://forum.castle-engine.io/t/tcastlewindow-missing/105>\
**Category:** Uncategorized\
**Created:** [December 1, 2019, 11:59am UTC](https://forum.castle-engine.io/t/tcastlewindow-missing/105 "2019-12-01T11:59:49Z")\
**Posts on this page:** 1\
**Showing post:** 8

<div class="post-metadata">

**Author:** ![eugeneloza](https://forum.castle-engine.io/user_avatar/forum.castle-engine.io/eugeneloza/32/12_2.png) [@eugeneloza](https://forum.castle-engine.io/u/eugeneloza)\
**Post date:** [December 1, 2019, 2:46pm UTC](https://forum.castle-engine.io/t/tcastlewindow-missing/105/8 "2019-12-01T14:46:37Z")

</div>

> [@gregest](#):
>
> I will still need to create the simple program portion for the other things, correct?

No. If you’re adding a `TCastleControl` to your already-working Lazarus project (not a “simple program” but an “Application”), nothing more is needed - Lazarus will make everything for you. Of course, you’ll still need to add and use events, like `OnRender` (to draw something on `TCastleControl`) or `OnPress` (to receive keyboard/mouse events) or `OnUpdate` (to do something every frame) - but that’ll be “Extending your code” to use Castle Game Engine.

You’ll need to start with a “simple program” only if you want to use `TCastleWindow`, e.g. if you’re planning to port your game/project to Android or want additional features, like a full-screen mode. UPD: note that even if you start with `TCastleControl`, you can “translate” your code from `TCastleControl` into using `TCastleWindowBase` - however, that’ll require some reworking of how the application is initialized and manages GUI elements.

---

_[View the full topic](https://forum.castle-engine.io/t/tcastlewindow-missing/105)._
