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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.02.2010, 18:46   #1
White_foxSA
Пользователь
 
Регистрация: 26.11.2009
Сообщений: 56
По умолчанию Delphi. Дайте пару советов

Привет форумчане, помогите в написании калькулятора, собственно он у меня написан, необходимо чуть чуть отредактировать.
Меня вот что интересует:
1.Как в поле TEdit запретить работу мышки, то есть, что бы мышью нельзя было не выделить, не копировать, не вставить.
2.Если мы вводим числа/действия с клавиатуры, то все пишется в edt1, но как только стоит щелкнуть мышкой по кнопке в проге(цифра, действие), то тут же курсор снимается из edt1 и для ввода с клавы приходится ставить курсор заново. Как сделать, что бы он был там постоянно?
3.Обнаружил небольшой бажок, если нажимаем какое то действие(делить например), а потом еще одно, то вылетает ошибка, как исправить?
White_foxSA вне форума Ответить с цитированием
Старый 20.02.2010, 19:06   #2
Ира-программистка
Новичок
Джуниор
 
Регистрация: 20.02.2010
Сообщений: 6
По умолчанию

А ты в Delphi, вообще, разбираешься?
Ира-программистка вне форума Ответить с цитированием
Старый 20.02.2010, 19:10   #3
White_foxSA
Пользователь
 
Регистрация: 26.11.2009
Сообщений: 56
По умолчанию

только начал изучать, поэтому и пишу в разделе для новичков, кстати это уже оффтоп
White_foxSA вне форума Ответить с цитированием
Старый 20.02.2010, 19:54   #4
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

Цитата:
1.Как в поле TEdit запретить работу мышки, то есть, что бы мышью нельзя было не выделить, не копировать, не вставить.
На событие OnContextPopup вешаешь данный код :
Код:
procedure TForm1.Edit1ContextPopup(Sender: TObject; MousePos: TPoint; var Handled: Boolean);
begin
  Handled:=true;
end;
Цитата:
стоит щелкнуть мышкой по кнопке в проге(цифра, действие), то тут же курсор снимается из edt1 и для ввода с клавы приходится ставить курсор заново. Как сделать, что бы он был там постоянно?
Просто используй не TButton, а TSpeedButton - они на "отнимают" фокус при нажатии как это делает "обычная" кнопка.

Цитата:
3.Обнаружил небольшой бажок, если нажимаем какое то действие(делить например), а потом еще одно, то вылетает ошибка, как исправить?
Нужно код посмотреть.
"Заряженному танку в дуло не смотрят" @Dekmer in WoT

Последний раз редактировалось Kotofff; 20.02.2010 в 20:05.
Kotofff вне форума Ответить с цитированием
Старый 20.02.2010, 20:24   #5
White_foxSA
Пользователь
 
Регистрация: 26.11.2009
Сообщений: 56
По умолчанию

Цитата:
Нужно код посмотреть.
Ну я думаю код не нужен, смысл в том, что Делфи, когда я нажимаю кнопку действия второй раз, расценивает ее как знак, следствие ошибка.
White_foxSA вне форума Ответить с цитированием
Старый 20.02.2010, 20:43   #6
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

А что происходит при первом нажатии ?
В смысле что в программе происходит ?

Можно на время выполнения "действия" отключать кнопки с действиями (Enabled:=false) ...
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Kotofff вне форума Ответить с цитированием
Старый 20.02.2010, 20:49   #7
White_foxSA
Пользователь
 
Регистрация: 26.11.2009
Сообщений: 56
По умолчанию

записывается в память первое действие
White_foxSA вне форума Ответить с цитированием
Старый 20.02.2010, 20:56   #8
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

Как-то все туманно ...
Ну тогда можно попробовать ввести какую-нить переменную (например, Act: boolean) и если действие нажато, то ей присвоить True.
А соответственно при нажатии на действие проверять если Act=true , то ничего не делать ...
Хотя как туманно все ...
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Kotofff вне форума Ответить с цитированием
Старый 20.02.2010, 20:58   #9
Ира-программистка
Новичок
Джуниор
 
Регистрация: 20.02.2010
Сообщений: 6
По умолчанию

Можете помочь с исходником. Нужно написать программу на delphi, которая определяет пересекаются отрезки или нет и выводит их на экран. Отрезки задаются координатами своих концов. Но выводить нужно не в графических координатах, а в декартовых.
Ира-программистка вне форума Ответить с цитированием
Старый 20.02.2010, 21:03   #10
White_foxSA
Пользователь
 
Регистрация: 26.11.2009
Сообщений: 56
По умолчанию

Цитата:
Как-то все туманно ...
Ну тогда можно попробовать ввести какую-нить переменную (например, Act: boolean) и если действие нажато, то ей присвоить True.
А соответственно при нажатии на действие проверять если Act=true , то ничего не делать ...
Хотя как туманно все ...
Давайте в ЛС код кину, посмотрите.
Цитата:
Можете помочь с исходником. Нужно написать программу на delphi, которая определяет пересекаются отрезки или нет и выводит их на экран. Отрезки задаются координатами своих концов. Но выводить нужно не в графических координатах, а в декартовых.
Вам в раздел фриланс или поиском попользоваться.
White_foxSA вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
КАЛЫМ на ПАРУ ДНЕЙ (PHP + Delphi) = $ BoryaPop Фриланс 8 24.05.2008 21:56
с нетерпением жду советов Римма Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 06.02.2008 09:43