Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.05.20;
Скачать: [xml.tar.bz2];

Вниз

Написать свой компонент, состоящий из стандартных   Найти похожие ветки 

 
iviom   (2007-04-25 15:46) [0]

Здравсвуйте. Направьте на верный путь, пожалуйста.
Хочу написать маленькую компоненту следующего вида:
Панелька, на ней 36 кнопочек русского (английского) алфавита.
Обработка событий кнопочек.. пару свойств...

Что-то не представляю, с чего начать-то? Какое тут приложение(тип) надо создавать?


 
homm ©   (2007-04-25 16:23) [1]

> Что-то не представляю, с чего начать-то? Какое тут приложение(тип)
> надо создавать?

Главное в качестве кнопок TButton не используй. Что - нибудь от TGraphicsControls наследущееся лучше.


 
Kolan ©   (2007-04-25 16:31) [2]

> Какое тут приложение(тип) надо создавать?

Начать можно c Munu->Components-> Create new component.


 
DimaBr ©   (2007-04-25 16:54) [3]

не вижу большого применения такому компоненту, а начать можно с  TToolButton + коллекция кнопок.


 
_Аноним ©   (2007-04-26 11:13) [4]

Ты спрашиваешь, кого выбрать предком?
Ну, например, TCustomControl


 
StriderMan ©   (2007-04-26 16:26) [5]


> _Аноним ©   (26.04.07 11:13) [4]
> Ну, например, TCustomControl

я бы посоветовал TGraphicControl, у него канва уже есть


 
Игорь Шевченко ©   (2007-04-26 16:35) [6]


> Хочу написать маленькую компоненту следующего вида:
> Панелька, на ней 36 кнопочек русского (английского) алфавита.
>
> Обработка событий кнопочек.. пару свойств...


Зачем именно компоненту ? Напиши фрейм


 
_Аноним ©   (2007-04-26 22:12) [7]


> StriderMan ©
</I
> я бы посоветовал TGraphicControl, у него канва уже есть

>

Канву создать не проблема.
А вот окном TGraphicControl не является. Что не есть хорошо в данном раскладе.


 
iviom   (2007-04-27 13:35) [8]

Да, похоже остановлюсь на frame. А применение ей такое:
пользователем лень писать что-то в строке поиска.. И они будут просто нажимат на кнопку, чтобы делать поиск в гриде на данную букву.
Вот такие ленивцы =)


 
iviom   (2007-04-27 13:39) [9]

А вот еще хочу спросить, чем плохо делать компонент на основе TPanel, например, а на него динамически расставлять кнопки TButton? Почему вы советуете не использовать TButton?


 
DimaBr ©   (2007-04-27 13:50) [10]


> И они будут просто нажимат на кнопку, чтобы делать поиск
> в гриде на данную букву.


Чем TLabel не подходит ???


 
iviom   (2007-04-27 13:54) [11]

Может и подходит, но уж такова структура, что будет и строка поиска - вводят туда последовательно буквы и в гриде ищется на эту последовательность строки и такая панелька, в которой можно просто нажать кнопку и все записи на эту кнопку отфильтруются.
Задумка такова.


 
DimaBr ©   (2007-04-27 14:00) [12]


> такая панелька, в которой можно просто нажать кнопку

Повесьте TPanel в свойство Caption которого ввыдите  "АБВГДЕЁЖЗИЙКЛМН...." и обрабатывайте OnClick


 
iviom   (2007-04-27 14:09) [13]

Ох... смысл в том, что к виду этой злощастной панельки предъявлены требования, чтобы она была именно такая - с кнопочками, с кнопочками переключения на русский и на английский. Мало того, она уже реализована и работает. Но возник вопрос сохранения (после повторного входа) последней нажатой кнопки. Ессно можно сохранять напримет текст этой кнопки, потом в цикле пробегать через все эти кнопки и если выполняется условие, то нажимать.. Но как-то не хочется этим все загромождать проект. Поэтому было принято решение (мной =)) либо делать фрайм, либо писать это все в компоненте. С фраймом вообще фигня какая-то.. Не понимаю, как  к нему обрщаться - создаю в нем эту всю конструкцию, переношу на форму. И как будто его нет... Просто все мои панельки и кнопки так и лежат. А мне хочется, чтобы можно было писать ему всякие свойства, функции, чтобы все красиво работало..


 
DimaBr ©   (2007-04-27 14:25) [14]

Хорошо, давайте напишем контрол (если хотите я вам буду помогать).
Как мне кажется - лучший родитель - TToolBar
Первоначально:
1. Имеют ли (должны ли иметь) кнопки фокус
2. Есть на панели что-нибудь ещё кроме кнопок (если есть, то находится ли все в одном ряду).


 
homm ©   (2007-04-27 15:17) [15]

> Почему вы советуете не использовать TButton?

Потому что для TButton система выделит отдельный рессурс, а наследника TGraphicsControl будет рисовать родительское окно, кем бы он не был, TLabel TSpeedButton  или TBitBtn.


 
Amoeba ©   (2007-04-27 15:26) [16]


> или TBitBtn.

Как бы не так! TBitBtn является потомком TButton.


 
homm ©   (2007-04-27 21:23) [17]

> Как бы не так! TBitBtn является потомком TButton.

Ну может быть, может быть :)



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.05.20;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.04 c
2-1177699162
Ezorcist
2007-04-27 22:39
2007.05.20
Многопоточность в Tserversocket


15-1177150053
ProgRAMmer Dimonych
2007-04-21 14:07
2007.05.20
Подскажите, пожалуйста, решение проблемы...


6-1163677053
dima_shapkin
2006-11-16 14:37
2007.05.20
IP


2-1177962098
vegarulez
2007-04-30 23:41
2007.05.20
Вопрос про DBGrid.(Перемещение по гриду, сколько записей видно)


11-1159931358
vampir_infernal
2006-10-04 07:09
2007.05.20
Как спрятать форму из панели задач?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский