Окно в GraphWPF/WPFObjects


#21

Наверно это дрлжен сказать тот, кто ее поднимал.


#22

Думаю, он не обновился


#23

У меня стоит последняя версия.

Этот код работает.

А этот нет:

uses GraphWPF;

begin
  Window.Clear(Colors.Gray);
  Window.IsFixedSize := True;
end.

#24

Ну так правильно, размер области на которой рисовать увеличивается из за того что рамки нет.


#25

@Admin,да,спасибо


#26

Впрочем, это тоже можно исправить.
@Admin может стоит устанавливать цвет бекграунда окна при заливке, чтоб при дальнейшем изменении размера - новую область закрашивало последним цветом Window.Clear?


#27

Может, стоит. Предложите реализацию


#28

В смысле реализацию? Что там предлагать то? Цвет бекграунта 1 способом устанавливается, на сколько я знаю:

  MainWindow.Background := new System.Windows.Media.SolidColorBrush(c);

А вообще наверно можно использовать кисточку которой заливали окно, а не создавать новую.


#29

Так цвет же каждый раз указывается


#30

Заливать окно в Window.Clear всё равно надо. Так вот я говорю что залить окно тоже нужна кисточка, поэтому можно использовать общую кисточку для заливки и присвоения свойству .Background. Это мелочь, но зачем лишний раз мусорить объектами.


#31

Не понял. Приведите код


#32
procedure WindowTypeClearPC(c: Color);
begin
  Host.children.Clear;
  if not rtbmapIsCleared then
  begin
    rtbmap.Clear;
    rtbmapIsCleared := True;
  end;
  
  var brush := ColorBrush(c);
  
  MainWindow.Background := brush;
  
  var dc := GetDC();
  dc.DrawRectangle(brush, nil, Rect(0,0,Window.Width,Window.Height));
  ReleaseDC(dc);
  
end;

Что делают первые 6 строчек - не представляю, они там были и я решил не трогать.