-
Всем приветь!
-
ага
-
Ой извините случайно нажал кнопка Добавить.. ну ладно в общем хотел спросить: Если кто работал на 1С е там есть очень удобный компонент который TextBox и button идет в месте. Или в Delphi Object inspector свойства Font. Там тоже TextBox и button. У button'a Caption наверное "..." (три точка). Как можно сделать c помощью в Delphi такой компонент?
-
> Если кто работал на 1С е
а если нет? давай скрин того, что хочешь...
-
Внимание! Здесь обсуждаются вопросы, связанные с разработкой компонентов, редакторов свойств, редакторов компонентов и экспертов IDE. Вопросы по поиску и использованию готовых компонентов, редакторов или экспертов являются нарушением тематики и могут быть удалены.
-
этот компонент я видел досовской банковской системе. потом в дельфийской банковской системе. вот я счас в третьем в жизни в крупном проекте, где допускаюсь к обсуждению КОМПОНЕНТА, в разных ипостасях кроме юзера. Везде мат по его поводу. Но идея КОМПОНЕНТА - отличная :) уж и на основе TEdit + форма с гридом видел, и на основе комбика, и TEdit + ListBox :)))) короче, пиши сам, идея здравая, юзерам нравится, от идей (юзерских) функционала и вариантов реализации - не соскучишься :)))
-
> Alimkulov © (23.07.12 14:47) [2] > Как можно сделать c помощью в Delphi такой компонент?
Берем фрейм, кладем на него Edit и кнопку, подгоняем размеры, на кнопку вешаем обработчик OnСlick, регистрируем в палитре. Все.
Или ставим библиотеку RxLib, там такой компонент уже готовый.
-
> Берем фрейм, кладем на него Edit и кнопку, подгоняем размеры, > на кнопку вешаем обработчик OnСlick, регистрируем в палитре. > Все.
Коротко, по делу и с юморком :)
-
> Юрий Зотов © (23.07.12 23:28) [6]
> Или ставим библиотеку RxLib, там такой компонент уже готовый.
да фиг там, нет там готового, про который идет речь, из базы подтягивает id и дальше еще хз что (тут и только начинается веселье) по ... ну короче да, OnClick :)))
-
Мне кажется TBUtton стоит внутри TEdit'а!
-
-
> Rouse_ © (23.07.12 23:40) [7] А что не так?
> Petr V. Abramov © (24.07.12 00:20) [8] А при чем тут база?
-
> Юрий Зотов © (24.07.12 16:21) [11] > А что не так?
Эээ, да вроде как все правильно с точки зрения получения результата :)
-
зы: автору, посмотри вот это - http://rouse.drkb.ru/tmp/bcb.zipчуть попозже выложу демку + еще пару контролов в том числе некий аналог EDIT-а с полным доступом к канвасу. Использовать просто: устанавливаешь и используешь, обработчики кнопок в событии OnButtonClick.
-
> Rouse_ © (24.07.12 16:31) [12]
То есть, я бы фрейм использовть не стал - там и без фрейма дел на полчаса, но не для новичков.
-
> там и без фрейма дел на полчаса
+1
Меня вообще бесит, когда наставят черте что.. А потом еще потеряют половину. А потом юзеры попросят "немного поправить" - и что? Заново переписывать ~ %%20 программки, вот что.
-
> То есть, я бы фрейм использовть не стал
Я бы точно не стал, да и ты, думаю то-же :) Слишком грубо, хотя задачу решает :)
-
> Alimkulov © (23.07.12 14:38)
D7 выкинь на помойку, на дворе 2012 год. используй стандартный компонент TButtonedEdit.
-
> Юрий Зотов © (24.07.12 16:21) [11] > > Petr V. Abramov © (24.07.12 00:20) [8] > А при чем тут база?
а при том, что
> Alimkulov © (23.07.12 14:47) [2] > > Ой извините случайно нажал кнопка Добавить.. ну ладно в > общем хотел спросить: > Если кто работал на 1С е там есть очень удобный компонент > который TextBox и button идет в месте. Или в Delphi Object > inspector свойства Font. Там тоже
если без базы, то Rx, и таки да, щщастье. только кому оно надо в такой постановке без базы.
-
> Eraser © (24.07.12 18:42) [17]
Где лежит это стандартный компонент TButtonedEdit?
> ouse_ © (24.07.12 16:43) [13]
скачал но Controls.ButtonedComboBox.pas но не могу установит!
> Petr V. Abramov © (24.07.12 21:25) [18]
Rx - что за это компонент, и где это лежит?
-
-
> Rouse_ © (24.07.12 16:43) [13]
Когда питаюсь установить Вашего компонента Delphi выдает ошибка: 'Control.ButtonedComboBox' is not a valid identifier. что за ошибка эта?
-
> Inovet © (25.07.12 09:08) [20] > > [19] Alimkulov © (25.07.12 09:01) > > Где лежит это стандартный компонент TButtonedEdit? > > Дополнительные
Нету там, может это у другой версии Delphi. У меня D7.
-
> [22] Alimkulov © (25.07.12 09:20) > может это у другой версии Delphi. У меня D7.
В первом предложении о чём?
> [17] Eraser © (24.07.12 18:42) > D7 выкинь на помойку, на дворе 2012 год. > используй стандартный компонент TButtonedEdit.
-
> [21] Будет работать начиная с d2009 и старше
-
> Eraser © (24.07.12 18:42) [17] > > > Alimkulov © (23.07.12 14:38) > > D7 выкинь на помойку, на дворе 2012 год.
Честно говоря я не понял что Вы имейте в виду! В общем я попробовал вот так:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons;
type
TForm1 = class(TForm)
Edit1: TEdit;
SpeedButton1: TSpeedButton;
procedure FormCreate(Sender: TObject);
private
SpeedButton11: TSpeedButton;
public
end;
var
Form1: TForm1;
implementation
procedure TForm1.FormCreate(Sender: TObject);
begin
SpeedButton11 := TSpeedButton.Create(self) ;
SpeedButton11.Visible := True;
SpeedButton11.Parent:=Edit1;
SpeedButton11.Align:=alRight;
SpeedButton11.Cursor:=crArrow;
end;
end.
Но здесь когда происходит KeyPress на Edit1 SpeedButton11 тоже меняет свой фон на белый. Потом Click на SpeedButton11 фон стандартный. Давайте ребята вместе подумаем! Что скажите о моем варианте?
-
> Alimkulov © (25.07.12 10:20) [25] > Что скажите о моем варианте?
Про сам вариант лучше не говорить ничего. Поэтому скажу другое - скачайте книжку Рэя Конопки и внимательно ее изучайте. После этого сами все о своем варианте поймете.
-
> [25] Alimkulov © (25.07.12 10:20) > > D7 выкинь на помойку, на дворе 2012 год. > > Честно говоря я не понял что Вы имейте в виду!
А что не понятно? Со времени выхода Д7 прошло 10 лет и вышло несколько новых версий.
-
Читал книги и стати о создание компонентов и в конце у меня вот так получилось:
unit LabelEditButton;
interface
uses
SysUtils, Classes, Controls, ExtCtrls, StdCtrls, Graphics, Forms, Buttons;
type
TLabelEditButton = class(TCustomPanel)
private
FPanel:TPanel;
FLabel: TLabel;
FEdit:TEdit;
FButton:TSpeedButton;
protected
public
constructor Create(AOwner:TComponent); override;
published
property Label1: TLabel read FLabel;
property Edit1:TEdit read FEdit write FEdit;
property Sbutton:TSpeedButton read FButton;
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('Samples', [TLabelEditButton]);
end;
constructor TLabelEditButton.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
BevelOuter:=bvNone;
Height:=21;
Width:=150;
FLabel:=TLabel.Create(Self);
FLabel.Align:=alLeft;
FLabel.Parent:=Self;
FLabel.Layout:=tlCenter;
FPanel:=TPanel.Create(Self);
FPanel.Align:=alClient;
FPanel.BevelOuter:=bvNone;
FPanel.BorderStyle:=bsSingle;
FPanel.Parent:=Self;
FButton:=TSpeedButton.Create(FPanel);
FButton.Align:=alRight;
FButton.Caption:='...';
FButton.Parent:=FPanel;
FEdit:=TEdit.Create(FPanel);
FEdit.Align:=alClient;
FEdit.BorderStyle:=bsNone;
FEdit.Parent:=FPanel;
end;
end.
Все отлично получилось но здесь не могу сделать OnClick на TSpeedButton'у. Помогите с этим!
-
-
Удалено модератором
-
-
Alimkulov А может сам поймешь и напишешь? В описании классов все сказано.
-
> По моему примеру можете написать кусок кода?
не-а
|