проблема с координатами мыши

Тема в разделе "Delphi - Система", создана пользователем Blood Pepper, 17 фев 2005.

Статус темы:
Закрыта.
  1. Blood Pepper

    Blood Pepper Гость

    Репутация:
    0
    Народ, помогите, пожалуйста, умоляю, помилуйте новичка-чайника, у меня возникла серьезная проблема, мне срочняк нужно сделать фишку: нормальный рабочий стол, все путёво, никаких с виду изменений нет, но стоит пользователю навести курсор мыши к самому верху, как оттудова выезжает вниз форма. Я знаю как такую прогу сделать, изначально задать отрицательный top форме и потом организовать цикл, чтобы форма выезжала, но подскажите плиз, где и что именно надо писать, чтобы определялись координаты мыши на рабочем столе, а не на форме?? Прошу помощи Вашей<_<
     
  2. Artexoid

    Artexoid Гость

    Репутация:
    0
    Blood Pepper
    Вот тебе пероцедурки.

    mouse.CursorPos.X:integer //Координата курсора по горизонтали
    mouse.CursorPos.Y:integer //Координата курсора по вертикали

    Пример:
    Код:
    if mouse.CursorPos.Y=0 then
    begin
      //Тут пишешь то, что тебе надо сделать когда курсос находится вверху рабочего стола.
    end;
    А еще можно сделать по другому. Можно форму не полностью спрятать, а оставить маленькую линию выглядывающую сверху экрана. Когда пользователь наведет на нее форма выедет вниз. В этом случае сразу видно, что там есть какая-то панелька или менюшка и тебе не надо узнавать позицию курсора на рабочем столе, а просто в событие OnMouseMove прописать выезд твоей формы.
     
  3. Blood Pepper

    Blood Pepper Гость

    Репутация:
    0
    Artexoid, спасибо огромное за совет=) А второй способ я уже пробовал использовать, но мне надо именно чтобы не было ничего видно. Спасиб, друган.
     
  4. Artexoid

    Artexoid Гость

    Репутация:
    0
    Blood Pepper
    Рад что смог помоч :unsure: :unsure: :blink: :blink: :huh:
     
  5. Blood Pepper

    Blood Pepper Гость

    Репутация:
    0
    Artexoid, кстати, заодно не подскажешь, как сделать фишку, чтобы можно было все элементы из listbox1 перенести в listbox2 нажатием одной кнопки? Как перенести по отдельности я знаю, а вот как чтобы все вместе?
     
  6. Artexoid

    Artexoid Гость

    Репутация:
    0
    Blood Pepper
    В смысле перенести все записи??
    Вот так:
    Код:
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      form1.ListBox2.Items:=form1.ListBox1.Items;
    end;
     
  7. Blood Pepper

    Blood Pepper Гость

    Репутация:
    0
    Ну да. Вообще то задание моё состоит в следующем: на форме имеются 2 листо бокса, между ними 4 до боли знакомые всем кнопки: перевсти одну выбранную запись из первого лист бокса во второй, из второго в первый, и перевести все записи из первого во второй и из второго в первый. Причем когда переводишь записи, из родительского лист бокса они должны удаляться. С кнопками, добавляющими по одной записи я разобрался, вот код:

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    if listbox2.Items.IndexOf(listbox1.Items[listbox1.itemindex])=-1
    then listbox2.items.add(listbox1.items[listbox1.itemindex]);
    listbox1.items.Delete(listbox1.ItemIndex);
    end;

    А вот как грамотно описать операцию со всеми записями, а то чё-то я там намудрил, он снова ошибки выдает?
     
  8. Barmutik

    Barmutik Гость

    Репутация:
    0
    Как насчёт:

    Код:
    for I := 0 to ListBox1.Items.Count - 1 do
    ListBox2.Items.Add(ListBox2.Items[I]);
    
    ListBox1.Items.Clear;
     
  9. Artexoid

    Artexoid Гость

    Репутация:
    0
    Blood Pepper
    А что разве мой код не переносить все записи с Listbox1 в Listbox2 ???
     
  10. Artexoid

    Artexoid Гость

    Репутация:
    0
    Blood Pepper
    Код:
    procedure TForm1.Button1Click(Sender: TObject);
    begin
     form1.ListBox2.Items:=form1.ListBox1.Items;
     form1.ListBox1.Clear; //вот это подпиши и все удалиться в ListBox1
    end;
    По моиму самый быстрый способ вот этот и без цыклов
     
  11. Barmutik

    Barmutik Гость

    Репутация:
    0
    А если в ListBox2 уже были записи до этого .. то что с ними будет? :unsure:
     
  12. Blood Pepper

    Blood Pepper Гость

    Репутация:
    0
    Artexoid, слушай, Barmutik дело говорит, ты просто присваиваешь все значения первого лист бокса второму, а потом чистишь первый, так ведь что если во втором уже есть значения после добавления одинарной кнопкой? Снова посыпятся ошибки или в лучшем случае добавятся 2 одинаковых записи, а мне надо чтобы все разные были.
     
  13. Artexoid

    Artexoid Гость

    Репутация:
    0
    Blood Pepper
    Barmutik
    А как вам такая комбинация !!??? :unsure:
    Код:
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      form1.ListBox2.Items.AddStrings(form1.ListBox1.Items);
      form1.ListBox1.Clear;
    end;
    Вот тут все работает нормально и записи в listbox2 которые были не теряются! :unsure: :blink:
     
  14. zubr

    zubr Гость

    Репутация:
    0
    Ну можно еще так:
    Код:
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    ListBox2.Items.AddStrings(ListBox1.Items);
    ListBox1.Items.Clear;
    end;
     
  15. zubr

    zubr Гость

    Репутация:
    0
    Artexoid
    Мы с тобой одновременно :unsure:
     
  16. Artexoid

    Artexoid Гость

    Репутация:
    0
    zubr
    Ну ты черт!! :unsure: :unsure: :blink: :blink: :huh: :huh: :( :( :lol: :lol: :lol: :lol:
    Ты с кем-то еще там 2 раза ответил :lol: :lol: :lol: :lol: :lol:
     
  17. Blood Pepper

    Blood Pepper Гость

    Репутация:
    0
    кстати, с координатами мыши чё-то не работает
     
  18. Artexoid

    Artexoid Гость

    Репутация:
    0
    Blood Pepper
    Короче вот. Я тут тебе написпл примерчик, как я понял : 2 Listbox 4 Кнопки (Перемещают записи ил 1-го Listbox в другой и назад), Кнопка выхода, Все это на форме которая выезжает когда курсор вверху экрана. Конечно код можно сократить немного, продумать получше, но общий смысл поймеш.
    Загрузить пример.
     
  19. Artexoid

    Artexoid Гость

    Репутация:
    0
    Blood Pepper
    Кстате когда скачаеш посмотриш скажи помогло или нет !!)
     
  20. Blood Pepper

    Blood Pepper Гость

    Репутация:
    0
Загрузка...
Похожие Темы - проблема координатами мыши
  1. Alex1994
    Ответов:
    7
    Просмотров:
    105
  2. PingvinPingvin
    Ответов:
    10
    Просмотров:
    111
  3. Free2playman
    Ответов:
    14
    Просмотров:
    133
  4. Дмитрий17
    Ответов:
    10
    Просмотров:
    190
  5. Jayse
    Ответов:
    9
    Просмотров:
    198
Статус темы:
Закрыта.

Поделиться этой страницей