Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
ВнизСоздание кнопок. Найти похожие ветки
← →
Vik © (2012-04-29 16:45) [0]Как при нажатии кнопки создать кнопку в определенном месте, причем чтоб при следующих запусках программы кнопка оставалась. Чтоб при втором нажатии создавалась кнопка немного ниже предыдущей созданной и так далее?
← →
brother © (2012-04-29 16:57) [1]> Как при нажатии кнопки создать кнопку в определенном месте
Create, Left, Top
> причем чтоб при следующих запусках программы кнопка оставалась
ini файл, читай - пиши
> Чтоб при втором нажатии создавалась кнопка немного ниже
> предыдущей созданной и так далее?
Create, Left, Top
← →
Vik © (2012-04-29 17:02) [2]Спасибо большое, только я не врубил немного(
← →
Vik © (2012-04-29 17:40) [3]А команда создания кнопки то какая?
← →
MBo © (2012-04-29 17:48) [4]http://www.delphikingdom.ru/asp/viewitem.asp?catalogid=342
← →
Cobalt © (2012-04-29 19:46) [5]> Vik ©
Если ты программист, то и поступай как программист:
Берешь листочек бумаги, и пишешь на нем:
Исходные данные: точка (Х, У) на форме
Задача: по команде (нажатие на спец-кнопку, по двойному щелчку мыши или из главного меню, или из контекстного меню) создать кнопку Кнопка1 по определенным координатам.
При следующем нажатии, если уже создана подобная кнопка, рассчитать координаты для новой кнопки на основе последней созданной, и создать её.
При следующем нажатии, если уже создана подобная кнопка, рассчитать координаты для новой кнопки на основе последней созданной, и создать её.
← →
Anatoly Podgoretsky © (2012-04-29 19:48) [6]> Vik (29.04.2012 16:45:00) [0]
И через некоторое время все окно будет заполнено кнопками, возможно в два
три ряда
← →
KilkennyCat © (2012-04-29 21:01) [7]
> в два
> три ряда
>
это по Z
← →
Vik © (2012-04-29 21:02) [8]Вообще, первый раз на форуме ищу ответы на вопросы, не думал что ответы будут)) Спасибо вам. Но какая команда создания кнопки, и в каком виде координаты вписывать?
← →
Vik © (2012-04-29 21:16) [9]Я недавно начал программировать. Мало что знаю. Не читал еще ничего. Обязательно прочитаю, только вот проект один очень хочется завершить, а знаний не хватает.Вот такой вот замкнутый круг=) Может напишет мне кто-нибудь команду для создания кнопки?
← →
Anatoly Podgoretsky © (2012-04-29 21:30) [10]> Vik (29.04.2012 21:16:09) [9]
Да “команда” одна для всех объектов, всех типов - Create
← →
KilkennyCat © (2012-04-29 21:35) [11]А можно и очень тупым способом - создать кучу заранее и сделать невидимыми
> команду для создания кнопки?
http://www.cyberguru.ru/programming/delphi/delphi-faq-page59.html
← →
Vik © (2012-04-29 22:32) [12]
> А можно и очень тупым способом - создать кучу заранее и
> сделать невидимыми
Кстати, в моем случае кажется подходит немного)))
И еще немного не по теме, но может за одним кто нибудь знает, какой компонент использовать, чтоб была как бы панель, которая прокручивается вниз, и чтоб на ней кнопки были и так далее.
KilkennyCat, за ссылку спасибо.
← →
Плохиш © (2012-04-30 00:28) [13]
> Я недавно начал программировать. Мало что знаю. Не читал
> еще ничего.
Пора создавать конференцию "для недоначинающих". Время пришло...
← →
Германн © (2012-04-30 01:21) [14]
> Vik © (29.04.12 22:32) [12]
> может за одним кто нибудь знает, какой компонент использовать,
> чтоб была как бы панель, которая прокручивается вниз, и
> чтоб на ней кнопки были и так далее.
TScrollBox
← →
Vik © (2012-04-30 09:20) [15]Плохиш, ну можно)
Германн, спасибо
← →
Германн © (2012-05-01 02:08) [16]
> Плохиш © (30.04.12 00:28) [13]
>
>
> > Я недавно начал программировать. Мало что знаю. Не читал
> > еще ничего.
>
> Пора создавать конференцию "для недоначинающих". Время пришло.
> ..
Эт точно!
Причём не только на ДМ. Но и других форумах по Дельфи. На всех форумах, на которые я хожу и где отвечаю, резко возросло количество вопросом с примечанием типа "я только сегодня/вчера начал изучать ...".
Причины этого скачка я не понимаю, на факт - есть факт.
P.S. Один из недоначинающих буквально сказал что-то типа:
"Я очень много всего прочитал. Неужели я читал не то"! :)
← →
megavoid © (2012-05-01 11:32) [17]> Причины этого скачка я не понимаю, на факт - есть факт.
мир, труд, май, сессия
> "я только сегодня/вчера начал изучать ..." - хоть честно говорят :))
>Я очень много всего прочитал. Неужели я читал не то!
в непрофильных ВУЗах преподы любят советовать Архангельского, но это если повезёт, часто встречается и Turbo Pascal, отсюда потом и вопросы "а как создать кнопки" и вообще про vcl
← →
sniknik © (2012-05-01 12:15) [18]> часто встречается и Turbo Pascal
это хорошие преподы, те кто учат языку, а не средствам... студенты же почему то уверены, что раз чего то препод на лекции не дал, то этого и не существует/знать не обязательно.
← →
Vik © (2012-05-01 13:12) [19]Ну я то не учусь в учебном учреждении (только предстоит), хочу немного освоить просто. Никто так и не даст адекватного ответа на мой вопрос?
← →
sniknik © (2012-05-01 13:28) [20]> Никто так и не даст адекватного ответа на мой вопрос?
давали, без толку. с 0 знаний ты просто ничего не понял. кроме "копипасты" "нулевым" ничего не подходит...
← →
brother © (2012-05-01 14:39) [21]> Никто так и не даст адекватного ответа на мой вопрос?
все в [1], остальное гугли (как и что), тк рассказвать основы основ языка врядли кто тут будет...
← →
Vik © (2012-05-01 16:19) [22]Основы основ и не надо. Почему такая бурная отрицательная реакция у вас? Это же конференция для начинающих. Скажите просто пример кода создания кнопки, прошу.
← →
Anatoly Podgoretsky © (2012-05-01 16:37) [23]Почему ты себя называешь начинающим, это неправда.
А примеров создания в справке много.
← →
sniknik © (2012-05-01 16:44) [24]> Это же конференция для начинающих. Скажите просто пример кода создания кнопки, прошу.
начинающих программистов, сайт программистов все таки... а не недоначинающих недопрограммистов...
давали тебе ссылку на подробное описание с примерами, любой разберется... если он конечно не полный ..., ну в смысле ([20]), кроме "копипасты", не понимающий.
← →
Vik © (2012-05-01 16:48) [25]Anatoly Podgoretsky, я не нашел ответа, на свой вопрос, решил здесь попробовать(уже пожалел). Если жалко просто помочь, без поучений всяких, то ничего не пишите.
← →
sniknik © (2012-05-01 16:53) [26]> без поучений всяких, то ничего не пишите.
встречное предложение... если тебе не нравится как помогают, то не учи "как надо", ну там, что кому писать или не писать...
начни с себя.
форум свободен для любых высказываний по теме. как поучений так кода и т.д.
← →
Vik © (2012-05-01 16:53) [27]sniknik, я переходил по ссылке. Это не то, что мне нужно.
← →
sniknik © (2012-05-01 16:55) [28]> Это не то, что мне нужно.
там ВСЕ что тебе нужно, чтобы сделать что написано в [0]. не скопипастить а сделать.
если не понимаешь основ, это твои проблемы, их как уже сказали объяснять никто не будет.
← →
Vik © (2012-05-01 16:55) [29]Ну не понимаю я, что теперь. Обосрать всегда легче, чем помочь. А знаний не 0 у меня, если человек чего-то не знает, то это не значит, что он не знает ничего
← →
sniknik © (2012-05-01 17:01) [30]> Ну не понимаю я, что теперь.
учиться и спрашивать по тому, что не понятно, а не обсирать отвечающих. или требовать ответов именно в том виде, что тебе хочется.
← →
Vik © (2012-05-01 17:08) [31]Я ни кого не обосрал, скорее даже наоборот. Я очень рад и благодарен буду, если кто-нибудь напишет строку кода, в которой содержится сама команда и координаты, размеры кнопки. Больше, в принципе, ничего и не прошу.
← →
sniknik © (2012-05-01 17:08) [32]> Ну не понимаю я, что теперь.
Старый рабочий передает своё хозяйство молодому.
- Значит так: ты работаешь дежурныи электриком. Утром приходишь - включаешь рубильник. Вечером уходишь - выключаешь. Понял?
-Неа. Не понял.
-Видишь рубильник. Утром его надо включить, люди придут, будут работать. Вечером, все уйдут. В целях пожарной безопасности рубильник дадо выключить. Понял?
-Да не понял я!
-Ну идрит твою... Рубильник знаешь? Включать-выключать умеешь? Утром ты первый приходишь, надо дать электричество цеху - поворачивашь рубильник в эту сторону. Вечером, когда все уйдут, повернешь его в другую сторону - выключишь. Понял?
- Мужик, ты что - тупой чтоли? Я тебе уже сколько раз говорю: Я не понял!! А ты всё переспрашиваешь!
← →
sniknik © (2012-05-01 17:10) [33]> Я очень рад и благодарен буду, если кто-нибудь напишет строку кода, в которой содержится сама команда и координаты, размеры кнопки.
значит врешь, что читал ссылку? там же это первый пример.
← →
Vik © (2012-05-01 17:10) [34]Этот пример не подходит сюда..
← →
Vik © (2012-05-01 17:13) [35]Ну и где же этот пример? Может я не увидел
← →
sniknik © (2012-05-01 17:13) [36]?????????????????????77
ты думаешь есть другие примеры? которые подходят сюда? чем отличаются?
← →
Vik © (2012-05-01 17:15) [37]Я не буду спорить, что они не подходят. Как задать координаты создаваемой кнопки? При создании где она появится то???
← →
sniknik © (2012-05-01 17:18) [38].... ээээ
может тебе программиста нанять?
← →
Vik © (2012-05-01 17:23) [39]sniknik, Не в тему
← →
Юрий Зотов © (2012-05-01 17:42) [40]
> Vik © (01.05.12 17:15) [37]
> Как задать координаты создаваемой кнопки?
Вы по ссылке в [4] ходили?
Похоже, что нет. А зря - там есть ответы на все Ваши вопросы.
← →
brother © (2012-05-01 18:41) [41]
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, inifiles;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
ButtonsCount: integer;
LastTop: integer;
procedure LoadButtons;
procedure SaveButton(Top: integer);
procedure AddButton;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.LoadButtons;
var
ini: TIniFile;
i: integer;
begin
ini:= TIniFile.Create("c:\buttons.ini");
ButtonsCount:= ini.ReadInteger("Setup", "ButtonsCount", -1);
if ButtonsCount > -1 then
begin
for i:= 0 to ButtonsCount do
begin
with TButton.Create(Self) do
begin
parent:= Self;
left:= 10;
LastTop:= ini.ReadInteger("Button" + IntTostr(i), "Top", 0 );
top:= LastTop;
end;
end;
end
else
LastTop:= 100;
ini.Free;
end;
procedure TForm1.SaveButton(Top: integer);
var
ini: TIniFile;
begin
ini:= TIniFile.Create("c:\buttons.ini");
ini.WriteInteger("Setup", "ButtonsCount", ButtonsCount);
ini.WriteInteger("Button" + IntTostr(ButtonsCount), "Top", Top );
ini.Free;
end;
procedure TForm1.AddButton;
begin
with TButton.Create(Self) do
begin
Inc(ButtonsCount);
parent:= Self;
left:= 10;
Inc(LastTop, 40);
top:= LastTop;
SaveButton(top);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
AddButton;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
LoadButtons;
end;
изучай мат. часть!
← →
brother © (2012-05-01 18:41) [42]зы. код не оптимизирован, дабы легче понять его работу...
← →
KilkennyCat © (2012-05-01 21:28) [43]
> код не оптимизирован, дабы легче понять его работу
> with TButton.Create(Self) do
а вообще, действительно анекдот про электрика. нет никакого смысла чем-либо помогать.
← →
Vik © (2012-05-02 05:40) [44]Спасибо. Неужели
← →
Vik © (2012-05-02 06:21) [45]ОООооо Спасибо, люди что помогли, я разобрался. Не знаю почему сложно так было для меня. Ссылки я смотрел, но прочитав немного, думал что это не то=).
Вот что-то такое мне нужно было.
procedure TForm1.Button1Click(Sender: TObject);
Var New : TButton;
begin
New:=TButton.Create(Form1);
New.Top:= 20;
New.Left:=29;
New.Name:="Button";
TButton.Create(Form1);
New.Parent:=Form1
← →
Думкин © (2012-05-02 09:08) [46]
> Вот что-то такое мне нужно было.
>
> procedure TForm1.Button1Click(Sender: TObject);
> Var New : TButton;
> begin
> New:=TButton.Create(Form1);
> New.Top:= 20;
> New.Left:=29;
> New.Name:="Button";
> TButton.Create(Form1);
> New.Parent:=Form1
Читать книги - не наш метод? Хотя бы Кенту. Нет, будем как нищие по формам побираться. А как иконку туда в правый нижний угол?
← →
Inovet © (2012-05-02 09:14) [47]> [46] Думкин © (02.05.12 09:08)
> А как иконку туда в правый нижний угол?
"как запуздырить", а то Гугл покажет много всякого непонятного.
← →
Думкин © (2012-05-02 09:18) [48]
> Inovet © (02.05.12 09:14) [47]
Этот вопрос надо не Гуглу, а Тенцеру задавать. Он его любит.
← →
БарЛог © (2012-05-02 09:51) [49]Ярчайший пример неправильных вопросов :)
← →
Мимо не прошел © (2012-05-02 10:48) [50]Удивительно толерантно на этот раз отреагировал форум.
← →
brother © (2012-05-02 10:52) [51][43] что не так?
← →
картман © (2012-05-02 12:16) [52]
> Удивительно толерантно на этот раз отреагировал форум.
это в благодарность за предоставленную возможность потрепаться на любимую тему
← →
Труп Васи Доброго © (2012-05-02 13:27) [53]
> Пора создавать конференцию "для недоначинающих".
ИМХО для собирающихся начать делать, но не собирающихся учить как делать.
← →
Компромисс © (2012-05-02 13:30) [54]
> Ссылки я смотрел, но прочитав немного, думал что это не
> то=).
Вот в этом была основная проблема. Советую доверять авторитетам в тех областях, в которых слабо разбираешься. Причем, чем слабее разбираешься, тем дальше читать по ссылкам, которые дают авторитеты, перед тем как решать, что ссылка не подходит.
← →
БарЛог © (2012-05-02 13:31) [55]> Пора создавать конференцию "для недоначинающих".
С автопроверкой орфографии русского, синтаксиса делфи, с интерфейсом попроще... :)
← →
Юрий Зотов © (2012-05-02 13:37) [56]
> Vik © (02.05.12 06:21) [45]
> procedure TForm1.Button1Click(Sender: TObject);
> Var New : TButton;
> begin
> New:=TButton.Create(Form1);
> New.Top:= 20;
> New.Left:=29;
> New.Name:="Button";
> TButton.Create(Form1);
> New.Parent:=Form1
Предпоследня строчка - зачем она?
← →
Vik © (2012-05-02 14:01) [57]Юрий Зотов, для красоты. Спасибо, действительно без неё работает.
Все с чего то начинают. Нет смысла обзывать меня недоначинающим недопрограммистом. Еще есть время всему научиться (в мои то 16 лет).
← →
Anatoly Podgoretsky © (2012-05-02 14:16) [58]> Vik (02.05.2012 14:01:57) [57]
А в чем красота?
← →
Vik © (2012-05-02 14:39) [59]Ни в чем. Я образно выразился, согласился что не нужна здесь эта строчка.
← →
AV © (2012-05-02 14:43) [60]
> Еще есть время всему научиться
тоже так думал до 30 :)
Из дневника очень среднего инженера 20 века
Михаил Задорнов
20 лет
Выучить английский, чтобы говорить на нем так же свободно, как Аркашка!
...
30 лет
Английский выучить до такой степени, чтобы мог свободно читать со словарем. За год прочесть всего Шекспира, хотя бы в переводе Маршака.
...
40 лет
Английский выучить до такой степени, чтобы мог свободно читать англо-русский словарь.
...
50 лет
Английский выучить до такой степени, чтобы мог прочесть, что написано на джинсах, которые сын привез из Грузии.
...
60 лет
Устроить внука в детский сад с английским уклоном и начать учить язык вместе с ним.
← →
Vik © (2012-05-02 15:01) [61]Ну я постараюсь уж так не делать=)
← →
Юрий Зотов © (2012-05-02 15:07) [62]> Vik © (02.05.12 14:39) [59]
> не нужна здесь эта строчка.
Она не только не нужна, она еще и вредна - приводит к бесполезному расходу памяти.
← →
Vik © (2012-05-02 15:14) [63]Юрий Зотов, согласен.
← →
Dennis I. Komarov © (2012-05-04 21:42) [64]... и перед ней
← →
Inovet © (2012-05-04 21:51) [65]> [64] Dennis I. Komarov © (04.05.12 21:42)
> ... и перед ней
За ней?
← →
Германн © (2012-05-04 22:14) [66]
> За ней?
Именно перед ней.
← →
Inovet © (2012-05-04 22:16) [67]> [66] Германн © (04.05.12 22:14)
> Именно перед ней.
А, там же Name меняется, а не Caption. Ну да.
Страницы: 1 2 вся ветка
Форум: "Прочее";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
Память: 0.63 MB
Время: 0.069 c