![]() |
Re: tabsheet deaktivieren
Schau doch mal, ob das Programm bei dir in TPBPageControl.DrawTab ankommt. Vielleicht ist TCustomTabControl.DrawTab in Lazarus nicht als virtuell deklariert?
|
Re: tabsheet deaktivieren
Zitat:
TPBPageControl.Create reinsteppe komme ich in die Tpagecontrol :-( die PBPagecontrol sieht nach dem Einbinden in die IDE so aus:
Delphi-Quellcode:
was macht Lazarus da?
unit PBPageControl;
{$mode objfpc}{$H+} interface uses Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, ComCtrls; type TPBPageControl = class(TPageControl) private { Private declarations } protected { Protected declarations } public { Public declarations } published { Published declarations } end; procedure Register; implementation procedure Register; begin RegisterComponents('Common Controls',[TPBPageControl]); end; end. |
Re: tabsheet deaktivieren
Zitat:
Du nimmst den ganzen Quellcode aus der Unit raus und wunderst dich, wenn Funktionalität verloren geht? :wall: Probier mal, den Originalcode aus dem Posting, das du eingangs verlinkt hast, zu nehmen, zu speichern und zu compilieren. Geht das mit Lazarus? (Den hier:
Delphi-Quellcode:
darfst du von mir aus noch einfügen.)
{$mode objfpc}{$H+}
|
Re: tabsheet deaktivieren
eben nicht :-(
ich hab den Code nicht rausgenommen, das hat Lazarus fabriziert. weiss der Teufel warum. ich habs sogar schon 2mal installiert und jedesmal ist danach der Code raus |
Re: tabsheet deaktivieren
Zitat:
![]() |
Re: tabsheet deaktivieren
alsooo
ich hab die Installation in der IDE rückgängig gemacht und nur die lokale Kopie im Projektverzeichnis gespeichert und verwendet. Beim Kompilieren bekomme ich schon bei der Deklaration der Procedure :
Delphi-Quellcode:
den Fehler:
Procedure CMDialogKey( Var msg: TWMKey ); message CM_DIALOGKEY;
PBPageControl.pas(69,66) Error: Identifier not found "CM_DIALOGKEY" in der messages.inc gibts den auch nicht :-( EDIT: ersetze ich die message Constante mit igrendwas anderem ( nur um weiter zu kommen) kommt die nächste Fehlermeldung bei: procedure DrawTab(TabIndex: Integer; const Rect: TRect; Active: Boolean); override; PBPageControl.pas(75,22) Error: Duplicate identifier "TabIndex" :-( |
Re: tabsheet deaktivieren
Unter Delphi steht der in der Controls.pas. Versuch es einfach mal damit.
|
Re: tabsheet deaktivieren
Zitat:
|
Re: tabsheet deaktivieren
Zitat:
|
Re: tabsheet deaktivieren
Moin, Moin.
Habe mit den Code des Grossmeisters mal angesehen - offenbar wird auch im Coder-Himmel nur mit Wasser gekocht: Die vorgestellte Loesung ist grundsaetzlich natuerlich viel eleganter als im OnChanging() den Wechsel zu verhindern, aber so ganz ueberzeugen kann sie denn doch nicht. Ein wenig Feinarbeit sollte man noch hineinstecken:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:49 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz