Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.01.2007, 12:38   #1
Alenkakiss
 
Регистрация: 08.01.2007
Сообщений: 5
По умолчанию Создание кнопок

Я 2-й день изучаю Delphi и вот у меня возникли вопросы.
Мне необходимо выполнить такое задание:
Создать проект, содержащий 3 кнопки со следующими функциями:
1-я кнопка
переключает видимость 2-й и 3-й (видна только одна из кнопок по очереди);
2-я кнопка (учесть реальные ограничения, связанные с размером формы)
сдвигает первую на 10 пикселей вниз;
3-я кнопка
перебирает тип курсора;
Щелчок на форме и <ALT-I> восстанавливают начальное состояние.
Двойной щелчок и <ALT-X>- закрывают форму.
Для каждой кнопки определить подсказку (Hint).

Пока получилось только со 2-й.

Кусок кода
procedure TForm1.Button2Click(Sender: TObject);
begin
Button1.Top:=Button1.Top+10; {сдвиг}

if (Button1.Top+Button1.Height)>Form1. Height-Button1.Height*2-10 then
Button1.Top:=Form1.Height-Button1.Height*2-10; {чтоб кнопка не убежала за пределы формы}
end;

Как реализовать остальное просто не знаю. В учебном пособие про это ничего не говорится.

И еще один вопрос:
Как поменять местами строки и столбцы массива так, чтобы минимальный элемент находился в правом верхнем углу?

Когда-то на Паскале проходили сортировку массивов. Как это осуществляется в Delphi? Где почитать?
Alenkakiss вне форума Ответить с цитированием
Старый 08.01.2007, 13:59   #2
SuperVisor
Павел Сергеевич
Форумчанин
 
Регистрация: 05.11.2006
Сообщений: 665
По умолчанию

1-е. На нажатие кнопки пишешь:
Код:
Button2.visible:=Button3.Visible;
Button3.Visible:=not Button2.Visible;
3-е. так же на нажатие
Код:
 case Form1.Cursor of
0: Form1.cursor:=-22;
-2: Form1.Cursor:=0;
else Form1.Cursor:=form1.Cursor+1;
end;
После добавляешь на форму Action List (на вкладке Standard) и создаешь два новых действия: первому в св-ве ShortCut ставишь Alt+I и на действи его выставляешь это:
Код:
button1.Top:=15;
Button2.Visible:=true;
button3.Visible:=True;
Form1.Cursor:=crDefault;
Добавляешь Action1Execute на свойство OnClick формы.
Второе действие в св-ве ShortCut ставишь Alt+X, на выполнении:
Код:
Close;
Добавляешь Action2Execute на свойство OnDblClick формы.
Hint - каждый (почти каждый компонент имеет одноименное св-во) единственное, что нужно сделать - поставить св-во ShowHint= True
Познавая других, мы познаем себя.
С'est la vie...
SuperVisor вне форума Ответить с цитированием
Старый 10.01.2007, 01:39   #3
Alenkakiss
 
Регистрация: 08.01.2007
Сообщений: 5
По умолчанию

Получилось с кнопками все, кроме клавиш. Главное, принцип поняла! Но в моей версии Delphi3 нет Action List. Как тогда быть, чтоб задать реагирование клавиш? Действовать через OnKeyPress?
Alenkakiss вне форума Ответить с цитированием
Старый 10.01.2007, 01:59   #4
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

OnKeyPress не пойдет - это событие не определяет нажатие служебных клавиш. Нужно использовать OnKeyDown или OnKeyUp для формы. Например:
if ((key=Ord('X')) and (Shift=[ssAlt])) then
Form1.DblClick;
mihali4 вне форума Ответить с цитированием
Старый 07.06.2009, 18:20   #5
Sergeevich
Пользователь
 
Регистрация: 26.05.2008
Сообщений: 30
По умолчанию

У меня вопрос, как создавать кнопки в MainMenu через код, иначе говоря через код, написали код на обычном button, и при нажатии на него создаются кнопки в главном меню, и создавать чтобы можно было бесчисленное число раз а не ограниченно. И второй вопрос, можно ли когда создается кнопка в главном меню, добавить для нее код, тоесть создается кнопка и для нее автоматом присваивается определенный код через событие. Если все это можно, то каким образом ? Если не сложно, скажите, а то я ни где не могу найти по этому инфу.
Sergeevich вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дизайн кнопок Fantom Общие вопросы Delphi 34 07.07.2008 06:54
Картинки для кнопок Zeraim Компоненты Delphi 10 21.05.2008 13:19
Создание кнопок на лету gabin Компоненты Delphi 2 11.05.2008 15:30
Стиль кнопок north Помощь студентам 5 15.11.2007 22:00
Дизайн кнопок с Win API rpy3uH Win Api 5 24.01.2007 09:16