Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi 2

Модерирует : ShIvADeSt

ShIvADeSt (22-03-2007 02:18): http://forum.ru-board.com/topic.cgi?forum=33&topic=8142  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100

   

ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Продолжение темы http://forum.ru-board.com/topic.cgi?forum=33&topic=3647&start=2020#lt
Внимание, все большие куски кода (более 5 строк) оформляем в тег [more] дабы уменьшить размер поста.

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 01:52 20-04-2006 | Исправлено: ShIvADeSt, 02:02 30-06-2006
GTA3

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ramazan
Отлично!! все получилось спасибо!!!

Всего записей: 114 | Зарегистр. 22-07-2004 | Отправлено: 16:16 16-09-2006
MoonFox

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну а если список в дизайнере уже заполнен, то можно в FormCreate использовать примерно такой код:
Код:
with ComboBox1 do
  for I := 0 to Items.Count - 1 do
    Items.Objects[I] := TObject(I + 1);
, а добавлять новые элементы кодом
Код:
with ComboBox1 do
  Items.AddObject('...', TObject(Items.Count + 1));

Всего записей: 11 | Зарегистр. 24-08-2006 | Отправлено: 16:17 16-09-2006
GTA3

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ramazan
 
все получилось спасибо

Всего записей: 114 | Зарегистр. 22-07-2004 | Отправлено: 16:55 16-09-2006
RomanTim

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
xitsmex
По поводу п.2:
События OnEnter, OnExit - просто уведомительные, исключения в них операцию не откатывают (скорее всего в данном случае само WinAPI такого не предусматривает). Поэтому если тебе надо, чтобы фокус не уходил с TEdit - возвращай его обратно
Код:
 
   if TEdit(Sender).Text = '1' then begin
    TEdit(Sender).SetFocus;
    raise Exception.Create('!!!');
  end;

Всего записей: 375 | Зарегистр. 11-09-2003 | Отправлено: 20:18 17-09-2006
Nicka_Grey

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Нужна помощь.
Портирую IDE-эксперт из Delphi7 в Delphi2006.
Так вот такой вопрос: в эксперте вызывается у меня функция GetNewModuleAndClassName, которая возвращает сгенерированное имя модуля, имя класса и имя файла модуля.
Так вот в 7-ке нормально отрабатывает, все что нужно возвращает, а в 2006-й как то не так работает. А точнее как минимум имя класса не возвращает.
Подскажите плз, что поменялось в этом плане в 2006-й. или вообще нужно по другому делать?

Всего записей: 1282 | Зарегистр. 04-01-2003 | Отправлено: 12:00 18-09-2006
pit23



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вопрос. Как узнать точное расположение DBEdit'а который находится на CtrlGrid'е (т.е. свойства Left, Top) отсносительно формы на которой расположен CtrlGrid.

Всего записей: 60 | Зарегистр. 04-03-2006 | Отправлено: 14:14 18-09-2006
Ramazan



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
pit23
Работать с абсолютными (экранными) координатами. см ClientToScreen/ScreenToClient
 
Присоединяюсь к Nicka_Grey. Есть хоть какое-нибудь описание OpenTools API для BDS?

Всего записей: 359 | Зарегистр. 13-04-2002 | Отправлено: 15:43 18-09-2006
Arvur



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Ramazan
Nicka_Grey
Вот эти ребята на сабже собаку съели _http://www.gexperts.org/opentools/

Всего записей: 2111 | Зарегистр. 18-01-2002 | Отправлено: 16:34 18-09-2006
Ramazan



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Arvur
Знаю, но интересуют особенности API именно для BDS

Всего записей: 359 | Зарегистр. 13-04-2002 | Отправлено: 17:56 18-09-2006
RostY



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
pit23
можно попробовать
 DBEdit.left+DBEdit.Parent.left;
 DBEdit.Top+DBEdit.Parent.Top;
 
если DBCtrlGrid лежит еще на чем-то (напр, на панели), можно рекурсивно перебирать парентов пока парент не станет TForm

Всего записей: 387 | Зарегистр. 11-01-2006 | Отправлено: 17:58 18-09-2006
STEEL



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Создаю форму, при нажатии на OK из контрола HotKey получаем Shorcut - в лучшем случае, а у меня почему то Hotkey равен нулю.

Код:
 
procedure TfrmMain.mnuItemOptionsClick(Sender: TObject);
begin
  with TfrmOptions.Create(self) do
   try
     ShowModal;
       if ModalResult = mrOk then
          begin
            frmMain.btnShortcut := HotKeyShort.HotKey;
          end;
 
    finally
      Free;
    end;
 

Всего записей: 2293 | Зарегистр. 06-01-2002 | Отправлено: 18:11 18-09-2006
Arvur



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Ramazan
Там внизу есть баги для BDS и ссылки.
После того, как Орлик прикрыл свою страничку, это имхо лучший start-point по вопросу.

Всего записей: 2111 | Зарегистр. 18-01-2002 | Отправлено: 20:16 18-09-2006
Ramazan



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Arvur
Угу. В свое время исследовал внутренности D7 почти методом "тыка". Не хотелось бы повторять опыт, поэтому ищу отличия. Впрочем, это для души, реальной НЕОБХОДИМОСТИ порта эксперта нет.

Всего записей: 359 | Зарегистр. 13-04-2002 | Отправлено: 22:11 18-09-2006
dmit000



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите пожалуйсто код для раскладки клавиатуры

Всего записей: 483 | Зарегистр. 07-06-2004 | Отправлено: 11:21 19-09-2006
Ramazan



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dmit000
Нуу... Backspace имеет код 8, например .  
Уточни вопрос, не ясно, что за код

Всего записей: 359 | Зарегистр. 13-04-2002 | Отправлено: 11:47 19-09-2006
wader



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dmit000
Может кодовую страницу? Для русского языка ср1251
 
А вообще поддерживаю Ramazana.
Неплохо бы уточнить вопрос, что именно тебе нужно.
 
Телепаты пока в отпуске.

Всего записей: 113 | Зарегистр. 26-05-2005 | Отправлено: 12:30 19-09-2006 | Исправлено: wader, 12:32 19-09-2006
dmit000



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ramazan, wader
всё верно.
хочу из своей программы менять раскладку клавиатуры.
пример: см. языковую панель в правом нижнем уголу
прошу Вас привети код

Всего записей: 483 | Зарегистр. 07-06-2004 | Отправлено: 14:10 19-09-2006
greenpc

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dmit000 лови  
var
  Layout: array[0.. KL_NAMELENGTH] of char;
begin
  LoadKeyboardLayout( StrCopy(Layout,'00000419'),KLF_ACTIVATE); //На русский
  LoadKeyboardLayout(StrCopy(Layout,'00000409'),KLF_ACTIVATE); //На английский
end;

Всего записей: 401 | Зарегистр. 18-04-2003 | Отправлено: 14:20 19-09-2006
wader



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dmit000
 
Код не мой, сразу предупреждаю . Нашел у себя в архиве.

Код:
 
function NameKeyboardLayout(layout : LongWord) : string; - Получает название раскладки из списка (для удобства сделал ))
 
function GetActiveKbdLayout : LongWord; - Получает раскладку в своей программе
 
function GetActiveKbdLayoutWnd : LongWord; - Получает раскладку в активном окне
 
procedure SetKbdLayout(kbLayout : LongWord); - Устанавливает раскладку в своей программе
 
procedure SetLayoutActiveWnd(kbLayout : LongWord); - Устанавливает раскладку в активном окне
 

 
Весь исходник

Всего записей: 113 | Зарегистр. 26-05-2005 | Отправлено: 14:21 19-09-2006 | Исправлено: wader, 14:25 19-09-2006
dmit000



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
спасибо за ответы. буду пробовать

Всего записей: 483 | Зарегистр. 07-06-2004 | Отправлено: 16:31 19-09-2006
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi 2
ShIvADeSt (22-03-2007 02:18): http://forum.ru-board.com/topic.cgi?forum=33&topic=8142


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru