Размещение винформы

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by inCode, 15 Sep 2011.

  1. inCode

    inCode Member

    Joined:
    20 Jun 2011
    Messages:
    141
    Likes Received:
    22
    Reputations:
    5
    Собственно устанавливаю позицию винформы
    Form.Location = new Point(1065, 557);
    или
    Form.DesktopLocation= new Point(1065, 557);

    Нужное мне отображение формы в левом нижмем углу.(Широкоформатный монитор)

    http://s015.radikal.ru/i330/1109/1c/b1b21004cdb1.png


    Обычный квадратный:

    http://s001.radikal.ru/i194/1109/9a/90c7b337a354.jpg

    Кто знает, через, что можно сделать одинаковое отображение в обеих случаях? В какую сторону грызть?
     
    #1 inCode, 15 Sep 2011
    Last edited by a moderator: 17 Sep 2011
  2. xmadstyle

    xmadstyle Member

    Joined:
    29 Aug 2008
    Messages:
    91
    Likes Received:
    53
    Reputations:
    24
    Высчитывать положение относительно разрешения экрана. на дельфях примерно так:
    Code:
    procedure TForm1.FormShow(Sender: TObject); 
    begin 
      Form1.Left:=Screen.Width-Form1.Width;
      Form1.Top:=Screen.Height-Form1.Height-30; 
    end;
     
  3. xophet

    xophet Member

    Joined:
    16 Apr 2011
    Messages:
    617
    Likes Received:
    49
    Reputations:
    5
    если через screen.width, то при различных скинах, толщине панели управления (панель слева\справа\сверху) будет различное отображение
    Screen.WorkAreaRect - получишь реально доступный кусок экрана не занятый панелями и прочей ерундой
    P.S. единственное "НО", когда панель управления скрыта (Свойства-автоматически скрывать панель задач), то WorkAreaRect дает полный экран, и теперь нужно отслеживать всплытие панели управления и смещать свое окно
     
    1 person likes this.
  4. inCode

    inCode Member

    Joined:
    20 Jun 2011
    Messages:
    141
    Likes Received:
    22
    Reputations:
    5
    2xophet Разобрался, Спасибо за наставления)