2

I have an application using TNotebook to switch between different sub pages, that are shown.

Now I have to extend this code a little bit (namely add a page and change sizes).

I was told that TNotebook shouldn't be used anymore. In Delphi's help I find "New applications should use TPageControl".

My question: Should I refactor the code to use TPageControl instead of TNotebook? What are the disadvandtages of TNotebook?

4

2 回答 2

3

TPageControl在我看来,它的主要优点是它是一个系统原生控件,不像TNotebook. 当您使用系统本机控件时,该控件由系统绘制,因此呈现出您使用的操作系统的本机外观。

当应用程序在新版本的操作系统上运行时,您的控件会自动获得该操作系统的原生外观。更重要的是,该行为是系统原生的。我的意思是控件响应键盘输入的方式等等。这不是一个问题,TPageControl因为系统没有提供那么多默认行为。但作为一般规则,建议是合理的。

当系统原生控件都不能满足您的特定要求时,您可能需要使用非原生控件。然后你必须努力确保你的控件适应它的环境。但是当有系统原生控件时,除非有强烈的理由避免使用它,否则应该使用它。

于 2013-11-14T10:52:14.240 回答
2

TNotebook 的另一个缺点是它从继承中排除了放置它的窗体或框架。

于 2018-02-02T15:36:45.707 回答