Location i Height

KR
  • Rejestracja:prawie 16 lat
  • Ostatnio:6 miesięcy
  • Postów:2514
0

Witam, głupi problem, ale chciałem rozciągnąć okno na całej wysokości obszaru roboczego i przesunąć je do prawej.
robię to tak jak pokazane w kodzie poniżej i prawie osiągnąłem to co chciałem, jednak to prawie mnie trochę denerwuje. Różnica między tym co oczekuje a rzeczywistością to około 5 pikseli z każdej strony. Chciałbym po prostu, żeby górna, prawa i dolna krawędź były idealnie na krawędzi monitora/paska menu start. W tym momencie krawędź monitora/menu start jest mniej więcej w połowie krawędzi okna

Kopiuj
            System.Drawing.Rectangle workingRectangle = Screen.PrimaryScreen.WorkingArea;
            this.Height = workingRectangle.Height;
            this.Location = new System.Drawing.Point(workingRectangle.Width - Width, workingRectangle.Top);

EDIT: nie wiem na ile to ważne, ale FormBorderStyle = FixedToolWindow


░█░█░█░█░█░█░█░█░█░█░█░
edytowany 1x, ostatnio: krwq
xeo545x39
  • Rejestracja:ponad 14 lat
  • Ostatnio:ponad 5 lat
  • Lokalizacja:Kosmos
  • Postów:1571
0

Dziwne u mnie jest idealnie, zrób ss zobaczymy jak u ciebie jest.


Co kurła debuguj ten kod i streszczaj się klientowi chce się fixa, a jak nie kurła to odpale visuala i ci pomoge a tego byś nie chciał
KR
  • Rejestracja:prawie 16 lat
  • Ostatnio:6 miesięcy
  • Postów:2514
0

okno.png

nie wiem czy to pomocne, ale nie jest to główne okno. Głównym oknem jest nowy projekt XNA 4.0, a tamte zepsute tworzone jest przy tworzeniu tamtego okna XNA.


░█░█░█░█░█░█░█░█░█░█░█░
edytowany 2x, ostatnio: krwq
unikalna_nazwa
  • Rejestracja:ponad 14 lat
  • Ostatnio:prawie 10 lat
1

w Width - ClientSize.Width będziesz miał szerokość ramki - teraz odejmij jej połowę i będzie idealnie
poza tym - nie chcesz widzieć ramki to czemu nie ustawisz typu obramowania okna na None?


Pół giga extra na dropboxie? Pół giga extra na dropboxie! Tyle wygrać! >>Klik here<<
edytowany 2x, ostatnio: unikalna_nazwa
KR
  • Rejestracja:prawie 16 lat
  • Ostatnio:6 miesięcy
  • Postów:2514
0

tak wyświetla idealnie, ale jest to uzależnione od wartości, która bierze się z d**y, że się tak wyrażę

Kopiuj
            int borderWidth2 = Width - this.ClientSize.Width;
            System.Windows.Forms.MessageBox.Show(borderWidth2.ToString()); // Wyswietla: 6
            System.Drawing.Rectangle workingRectangle = Screen.PrimaryScreen.WorkingArea;
            this.Height = workingRectangle.Height-8;
            this.Location = new System.Drawing.Point(workingRectangle.Right - Width-4, workingRectangle.Top+4);

chyba, że dla nich idealnie to jest bez tego czarnego co jest naokoło okna (tak jak po zmaksymalizowaniu)... to by nawet wyjaśniało różnice 1 piksela


░█░█░█░█░█░█░█░█░█░█░█░
edytowany 2x, ostatnio: krwq

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.