引言: 若希望在TNotebook或TPageControl组件的所有页面上显示某些组件(例如浏览数据库的列表框)时,不需要在在每个页面上重复设置这些组件,只需要首先建立它们,然后再添加TNotebook或TPageControl控件,调整它们的大小和位置,用鼠标右键单击TNotebook或TPageC...
摘要:var
ihandlecount: integer;
plist: array[1..nhkl_list] of hkl;
szimename: array[0..254] of char;
i: integer;
sfound: string;
begin
lstcomposition.items.clear;
ihandlecount := getkeyboard......
摘要:其实把属性编辑器等引用designeditors的部分,如属性编辑器的声明、实现以及属性编辑器的注册另写一个单元就行了。
下面是一个简单的例子
unit nwdicttreeviewreg;
interface
uses
windows, messages, sysutils, classes, graphics, controls, forms, dialogs,
comc......
在TNotebook组件的所有页面上显示组件上一页 ...
另一种更为有效的方法是编写一段代码,来动态改变组件的位置,这种方法对所有的组件均有效.以tpagecontrol为例,在其onchange事件处理程序中插入如下代码:
【程序编程相关:
【我爱DELPHI,我学XML】DAY 】 【推荐阅读:
利用极品五笔刷QB程序原代码
】
procedure tform1.pagecontrol1change(sender: tobject); 【扩展信息:
希望我不要下定决心放弃borland与d】
begin
panel1.parent := pagecontrol1.activepage;
//other code follows
end;
实际使用时,用自己的组件代替panel1.记住:应当将组件放置在程序运行时,打开对话框时首先显示的对话页上,以避免在窗体的oncreate事件处理程序中编写代码.
摘要:将以下代码保存为multinst.pas, 然后在任何project的
main form中uses multinst, 就可以完善防止程序的多个
实例同时运行, 特与大家共享.
unit multinst;
interface
const
mi_querywindowhandle = 1;
mi_respondwindowhandle = 2;
mi_error_none......