Форум программистов  
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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

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

Я 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, 14:59   #2
SuperVisor
Павел Сергеевич
Участник клуба
 
Регистрация: 05.11.2006
Адрес: г.Тюмень
Сообщений: 665
Репутация: 328

icq: 235938687 Отправить сообщение для SuperVisor с помощью AIM
По умолчанию

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
SuperVisor вне форума   Ответить с цитированием
Старый 10.01.2007, 02:39   #3
Alenkakiss
 
Регистрация: 08.01.2007
Сообщений: 5
Репутация: 10
По умолчанию

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

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
Репутация: 10
По умолчанию

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



Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дизайн кнопок 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 23:00
Дизайн кнопок с Win API rpy3uH Win Api 5 24.01.2007 10:16




05:56.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

купить трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru