Ustawienie okna programu, tak aby było na pełny ekran

Ustawienie okna programu, tak aby było na pełny ekran
SennyK
  • Rejestracja:około 8 lat
  • Ostatnio:około 8 lat
  • Postów:9
0

Witam. Pisze aplikacje, i chce żeby aplikacja otwierała się w trybie pełnoekranowym oraz żeby nie było paska górnego (przyciski zamykania minimalizowania i rozmiaru okna już usunąłem ale jeszcze nie wiem jak usunac cała góre). Wykierował by mnie ktoś na temat z tym związany lub kod który coś takiego robi? Z góry mówie że używałem już funkcji szukaj i Google lecz nic takiego nie znalazłem :/
Pozdrawiam

edytowany 2x, ostatnio: flowCRANE
Azarien
  • Rejestracja:ponad 21 lat
  • Ostatnio:dzień
1
Kopiuj
  BorderStyle := bsNone;
  WindowState := wsMaximized;
SennyK
  • Rejestracja:około 8 lat
  • Ostatnio:około 8 lat
  • Postów:9
0

nie sądziłem że to będzie taki łatwe :D
widziałem te opcje w proporties ale nie wiedziałem że to akurat to, dzięki

Azarien
  • Rejestracja:ponad 21 lat
  • Ostatnio:dzień
0

Windows w zasadzie nie ma czegoś takiego jak „okno pełnoekranowe” jako osobny stan okna. Okno pełnoekranowe to takie, które po prostu zajmuje cały ekran i nie ma ramki.
Gdy takie okno zostanie otwarte, system powinien automatycznie schować pasek zadań. (absolutnie nie należy tego robić ręcznie)

Może być też potrzebne ustawienie Left i Top na 0 a Width i Height na rozmiar ekranu. Nie mam Delphi pod ręką.

edytowany 2x, ostatnio: Azarien
SennyK
  • Rejestracja:około 8 lat
  • Ostatnio:około 8 lat
  • Postów:9
0

działa wszystko tak jak chciałem, tylko musze ustawić jeszcze buttony w rozmiarze okna, chyba ze jest cos takiego co zmieniało by rozdzielczosc na 1240 x 800 bo w takiej rozdzialce chce to zrobic

flowCRANE
Moderator Delphi/Pascal
  • Rejestracja:ponad 13 lat
  • Ostatnio:7 minut
  • Lokalizacja:Tuchów
  • Postów:12165
1

musze ustawić jeszcze buttony w rozmiarze okna, chyba ze jest cos takiego co zmieniało by rozdzielczosc na 1240 x 800 bo w takiej rozdzialce chce to zrobic

Jeśli w designerze formularz jest relatywnie mały, a po uruchomieniu zawsze ma zajmować pełny ekran to kontrolki muszą się porozsuwać i dostosować rozmiar do wymiarów okna;

Do tego celu używa się właściwości Anchors lub Align, aby ustawić zakotwiczenie kontrolki do konkretnej lub konkretnych krawędzi rodzica (okna lub konstrolki grupującej jak TPanel) lub całkowite wypełnienie całej przestrzeni z danej strony rodzica lub całej jego powierzchni; Jeśli dany komponent ma mieć określony maksymalny i/lub minimalny rozmiar, należy zainteresować się właściwością Constraints (tej nie używaj, jeśli masz ustalony Align);

Jeżeli nie o to chodzi to opisz problem dokładniej.


Pracuję nad własną, arcade'ową, docelowo komercyjną grą z gatunku action/adventure w stylu retro (pixel art), programując silnik i powłokę gry od zupełnych podstaw, przy użyciu Free Pascala i SDL3. Więcej informacji znajdziesz na moim mikroblogu.
edytowany 3x, ostatnio: flowCRANE
SennyK
  • Rejestracja:około 8 lat
  • Ostatnio:około 8 lat
  • Postów:9
0

pomogło dzięki :)
ale teraz mam kolejny problem nie związany z tematem..
wrzuciłem na forme TTimer który po ukończeniu pracy zmienia linijke w TMemo a następnie odświeża Forma lecz tego nie robi..

Kopiuj
Form1.Refresh;
Form1.Update;
Form1.Repaint;

Użyłem każdej z w/w opcji i żadna nie zadziałała

edytowany 3x, ostatnio: flowCRANE
flowCRANE
Moderator Delphi/Pascal
  • Rejestracja:ponad 13 lat
  • Ostatnio:7 minut
  • Lokalizacja:Tuchów
  • Postów:12165
0

Spróbuj:

Kopiuj
Application.ProcessMessages();

jeśli faktycznie wszystkie powyższe nie spełniają oczekiwań.


Pracuję nad własną, arcade'ową, docelowo komercyjną grą z gatunku action/adventure w stylu retro (pixel art), programując silnik i powłokę gry od zupełnych podstaw, przy użyciu Free Pascala i SDL3. Więcej informacji znajdziesz na moim mikroblogu.
edytowany 1x, ostatnio: flowCRANE
SennyK
  • Rejestracja:około 8 lat
  • Ostatnio:około 8 lat
  • Postów:9
0

również brak rezultatu

flowCRANE
Moderator Delphi/Pascal
  • Rejestracja:ponad 13 lat
  • Ostatnio:7 minut
  • Lokalizacja:Tuchów
  • Postów:12165
0

Najwidoczniej Twój kod nie robi tego, czego od niego oczekujesz.


Pracuję nad własną, arcade'ową, docelowo komercyjną grą z gatunku action/adventure w stylu retro (pixel art), programując silnik i powłokę gry od zupełnych podstaw, przy użyciu Free Pascala i SDL3. Więcej informacji znajdziesz na moim mikroblogu.
SennyK
  • Rejestracja:około 8 lat
  • Ostatnio:około 8 lat
  • Postów:9
0

właśnie robi to co chce

Kopiuj
 procedure TForm9.Timer1Timer(Sender: TObject);
var
poziom:string;
begin

   Label3.Caption := inttostr(i);

   if i = 0 then

      begin

          Timer1.Enabled := false;

          if(Label6.Caption='Ratusz') then
          begin
          poziom:=Label28.Caption;
          Form1.BazaDanych.Lines.Delete(1);
          Form1.BazaDanych.Lines.Insert(1, poziom);
          Form9.Update;
          end;

          if(Label6.Caption='Koszary') then
          begin
          poziom:=Label28.Caption;
          Form1.BazaDanych.Lines.Delete(2);
          Form1.BazaDanych.Lines.Insert(2, poziom);
          Form9.Refresh;
          end;

          if(Label6.Caption='Tartak') then
          begin
          poziom:=Label28.Caption;
          Form1.BazaDanych.Lines.Delete(3);
          Form1.BazaDanych.Lines.Insert(3, poziom);
          Form9.Refresh;
          end;

          if(Label6.Caption='Kopalnia') then
          begin
          poziom:=Label28.Caption;
          Form1.BazaDanych.Lines.Delete(4);
          Form1.BazaDanych.Lines.Insert(4, poziom);
          Form9.Refresh;
          end;

          if(Label6.Caption='Cegielnia') then
          begin
          poziom:=Label28.Caption;
          Form1.BazaDanych.Lines.Delete(5);
          Form1.BazaDanych.Lines.Insert(5, poziom);
          Form9.Refresh;
          end;

          Form9.Update;
          Label6.Visible:=false;
          Label3.Visible:=false;
          Label28.Visible:=false;

      end;

   i := i - 1;

end;

są tam różne funkcje (Refresh Update) bo probowalem jakos to zrobic ale nici...
jak działa program? Pobiera z labela zawartosc, nastepnie ją sprawdza, jeśli nazywa się np. Ratusz to sprawdza jej poziom (wpisany w labelu) następnie usuwa z Memo, potem dodaje do Memo i powinien odświeżyć ale tego nie robi..

edytowany 1x, ostatnio: flowCRANE
flowCRANE
Moderator Delphi/Pascal
  • Rejestracja:ponad 13 lat
  • Ostatnio:7 minut
  • Lokalizacja:Tuchów
  • Postów:12165
0

Przecież Twój kod zmienia zawartość Memo na Form1, a Ty odświeżasz Form9...

Po pierwsze, trzeba skrócić ten kod - ta drabinka ifów nie dość że wygląda paskudnie, to jeszcze sprawdzany w niej jest każdy warunek, nawet jeśli któryś wcześniejszy zostanie spełniony; Napisz sobie funkcję, która zamieni łańcuch znaków z etykiety na liczbę, bo jej potrzebujesz w warunkach:

Kopiuj
function BuildingNameToIndex(const AName: String): Integer;
const
  BUILDING_NAMES: array [1 .. 5] of String = (
    'Ratusz', 'Koszary', 'Tartak', 'Kopalnia', 'Cegielnia'
  );
var
  LIndex: Integer;
begin
  for LIndex := Low(BUILDING_NAMES) to High(BUILDING_NAMES) do
    if BUILDING_NAME[LIndex] = AName then
    begin
      Result := LIndex;
      Exit();
    end;
end;

Następnie pozbądź się tych warunków:

Kopiuj
procedure TForm9.Timer1Timer(Sender: TObject);
var
  LIndex: Integer;
begin
  Label3.Caption := IntToStr(I);

  if I = 0 then
  begin
    Timer1.Enabled := False;

    Form1.BazaDanych.BeginUpdate();
    try
      LIndex := BuildingNameToIndex(Label6.Caption);
      Form1.BazaDanych.Lines[LIndex] := Label28.Caption;
    finally
      Form1.BazaDanych.EndUpdate();
    end;
    
    Label6.Hide();
    Label3.Hide();
    Label28.Hide();
  end;
  
  Dec(I);
end;

To w zupełności powinno wystarczyć;

Zauważ, że w ogóle nie potrzebujesz usuwać pozycji z BazaDanych.Lines - Ty usuwasz i wstawiasz nową dokładnie w to samo miejsce, więc spokojnie wystarczy po prostu zmienić wartość danej linijki i tyle; Dodałem wywołania metod BeginUpdate i EndUpdate, w razie gdyby VCL w Twoim starym Delphi miało jakiś problem z odświeżaniem zawartości (choć nie uważam, żeby tak było);

Poza tym nazwij kontrolki i formularze sensownie, bo identyfikatory typu Label3, Form1, Timer1 i podobne, kompletnie nic nie mówią o swoim przeznaczeniu.


Pracuję nad własną, arcade'ową, docelowo komercyjną grą z gatunku action/adventure w stylu retro (pixel art), programując silnik i powłokę gry od zupełnych podstaw, przy użyciu Free Pascala i SDL3. Więcej informacji znajdziesz na moim mikroblogu.
edytowany 3x, ostatnio: flowCRANE
SennyK
  • Rejestracja:około 8 lat
  • Ostatnio:około 8 lat
  • Postów:9
0

ale to przecież i tak nie będzie odświeżać

flowCRANE
Moderator Delphi/Pascal
  • Rejestracja:ponad 13 lat
  • Ostatnio:7 minut
  • Lokalizacja:Tuchów
  • Postów:12165
1

Najpierw sprawdź, a poźniej narzekaj; Poza tym pozbądź się tego środowiska i pisz w jakimś aktualnym i ciągle rozwijanym; Lazarus jest o wiele lepszym środowiskiem od tego co masz, przy czym jest zupełnie darmowy.


Pracuję nad własną, arcade'ową, docelowo komercyjną grą z gatunku action/adventure w stylu retro (pixel art), programując silnik i powłokę gry od zupełnych podstaw, przy użyciu Free Pascala i SDL3. Więcej informacji znajdziesz na moim mikroblogu.
edytowany 1x, ostatnio: flowCRANE
SennyK
  • Rejestracja:około 8 lat
  • Ostatnio:około 8 lat
  • Postów:9
0

musze pisać w tym bo w szkole sie tego ucze... dzięki

SennyK
  • Rejestracja:około 8 lat
  • Ostatnio:około 8 lat
  • Postów:9
0

co do tego odświeżania Forma już doszedłem jak to zrobić, odpowiedź daje dla potomnych

Mój Form pobierał wszystkie dane przy procedurze onShow a ja próbowałem go 'namalować jeszcze raz poprzez funkcje Repaint a ta funkcja powoduje jeszcze raz zadziałanie procedury onPaint więc wrzuciłem cały kod z onShow do onPaint i teraz funkcja Repaint działa jak należy :)

Temat można zamknąć

flowCRANE
Zakończenie wątku to zaplusowanie pomocnych postów i oznaczenie jednego jako rozwiązanie problemu (zaznaczenie fajeczki po prawej stronie tego posta).
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)