# Problem Z Kolorami Formy

2011-09-16 15:55
##### GostekPro
0

witam mam problem z kolorami form ponieważ gdy chce zmienic naprzykład z czarnego na bialy formy 4 to nie dziala , nic nie dziala
raz sie da pozniej sie nie da

kod

if (radiobutton4.Checked) and (checkbox1.Checked) and (checkbox2.Checked) and (checkbox3.Checked) and (checkbox4.Checked) then
begin
form1.color:=ClBlue;
form2.color:=ClBlue;
form3.color:=ClBlue;
form4.color:=ClBlue;
end;
if (radiobutton2.Checked) and (checkbox1.Checked) and (checkbox2.Checked) and (checkbox3.Checked) and (checkbox4.Checked) then
begin
form1.color:=ClBlack;
form2.color:=ClBlack;
form3.color:=ClBlack;
form4.color:=ClBlack;
end;
if (radiobutton1.Checked) and (checkbox1.Checked) and (checkbox2.Checked) and (checkbox3.Checked) and (checkbox4.Checked) then
begin
form1.color:=ClWhite;
form2.color:=ClWhite;
form3.color:=ClWhite;
form4.color:=ClWhite;
end;
if (radiobutton3.Checked) and (checkbox1.Checked) and (checkbox2.Checked) and (checkbox3.Checked) and (checkbox4.Checked) then
begin
form1.color:=ClGreen;
form2.color:=ClGreen;
form3.color:=ClGreen;
form4.color:=ClGreen;
end;

if (radiobutton4.Checked) and (checkbox1.Checked) and (checkbox2.Checked) and (checkbox3.Checked)  then
begin
form1.color:=ClBlue;
form2.color:=ClBlue;

form4.color:=ClBlue;
end;
if (radiobutton2.Checked) and (checkbox1.Checked) and (checkbox2.Checked) and (checkbox3.Checked)  then
begin
form1.color:=ClBlack;
form2.color:=ClBlack;

form4.color:=ClBlack;
end;
if (radiobutton1.Checked) and (checkbox1.Checked) and (checkbox2.Checked) and (checkbox3.Checked)  then
begin
form1.color:=ClWhite;
form2.color:=ClWhite;

form4.color:=ClWhite;
end;
if (radiobutton3.Checked) and (checkbox1.Checked) and (checkbox2.Checked) and (checkbox3.Checked)  then
begin
form1.color:=ClGreen;
form2.color:=ClGreen;

form4.color:=ClGreen;
end;
if (radiobutton4.Checked) and (checkbox1.Checked) and (checkbox2.Checked)  then
begin
form1.color:=ClBlue;
form2.color:=ClBlue;

end;
if (radiobutton2.Checked) and (checkbox1.Checked) and (checkbox2.Checked) then
begin
form1.color:=ClBlack;
form2.color:=ClBlack;

end;
if (radiobutton1.Checked) and (checkbox1.Checked) and (checkbox2.Checked) then
begin
form1.color:=ClWhite;
form2.color:=ClWhite;

end;
if (radiobutton3.Checked) and (checkbox1.Checked) and (checkbox2.Checked)  then
begin
form1.color:=ClGreen;
form2.color:=ClGreen;

end;
begin

form3.color:=ClBlue;

end;
begin

form4.color:=ClBlack;
end;
begin

form2.color:=ClWhite;
end;
begin
form1.color:=ClGreen;

end;

rozumiecie <ort>oco</ort> chodzi ?

bardzo prosze o konkretna odpowiedz nie typu : "naucz sie podstaw"
bo delphi znam bardzo dobrze

edytowany 1x, ostatnio: ŁF, 2011-09-18 22:14

Pozostało 580 znaków

2011-09-16 16:05
##### payl
1

rozumiecie oco chodzi ?

O bardzo długi i nieczytelny kod?

bo delphi znam bardzo dobrze

To potrenuj algorytmy...

Użyj sobie debugera i sprawdź czy wchodzi w Twój warunek w ogóle. Może zdarzenia nie wywołuje. Albo warunek jest walnięty.

Nie pisz do mnie PM o czymś co nie dotyczy bezpośrednio mnie. | Nie rozmawiaj ze mną jeśli brak Ci kultury (wystarczy że mi brakuje) | Nie jestem zły, jestem po prostu zły.

Pozostało 580 znaków

2011-09-16 16:08
##### olesio
1

Kod niesformatowany to się patrzeć nie chce, poza tym wrzucił byś projekt spakowany i dołaczony do posta to wtedy łatwiej było by analizować. Pewnie coś nie tak z warunkami sprawdzania CheckBoxów, skoro kolor się nie zmienia tak jak chcesz czy tam nie zmienia się w ogóle. I coż innego Tobie można powiedzieć, jeśli nie porada nauki podstaw, skoro w innych postach twierdzisz, że nie umiesz zainstalować SynEdit, a do niby swojego projektu szukasz dwóch programistów, gdzie w projekcie masz być odpowiedzialny tylko za interface i "drobną pomoć w kodzie". A jak doradzam Tobie na "Twoim" chatcie napisanie czegoś fajnego w WinAPI to piszesz, że nie znasz WinAPI. Także wybacz, ale według mnie stwierdzenie, że "Delphi znam bardzo dobrze" - jest w Twoim przypadku trochę na wyrost, ponieważ jakbyś znał je bardzo dobrze nie miałbyś wyżej wymienionych "problemów".

EDIT: no tak payl mnie ubiegł, a faktycznie tutaj ten kod po założeniu breakpointa na jego początku można prześledzić, które bloki się wykonają, a ktore nie. Poza tym w ogóle pod Debuggerem zobaczysz więcej, bo właśnie on jest po to żeby znaleźć bugi.

edytowany 2x, ostatnio: olesio, 2011-09-16 16:11
Synedit juz wczoraj zainstalowalem.. - GostekPro 2011-09-16 16:23

Pozostało 580 znaków

2011-09-16 16:15
##### GostekPro
0

algorytmy sa wporzadku , kod jest wporzadku dziala ale nie tak jak chce ... gdy zaznaczam sobie forme kolory to mi sie zmienia czasem na jakis kolor a czasem nie , moze to byc zielony czy niebieski tak jak z innymi
macie tu caly projekt : http://www.speedyshare.com/files/30341621/projektgostekpro.rar

UŻYJ DEBUGGERA. DOTARŁO? SUPER - payl 2011-09-16 16:16
NO A CZEGO JA UZYWAM ? MIKROFALOWKI ? - GostekPro 2011-09-16 16:19

Pozostało 580 znaków

2011-09-16 16:43
##### olesio
0

Masz poprawiony projekt w załączniku. Ale znasz Delphi zajebiście, chyle wręcz czoła. Pieprzyć szczegóły, nie? Co tam, że Unit3 zapisany gdzie indziej niż reszta, a niech sie wala, ktoś prosi o pełen projekt, a tu jebut nie ma jednej formatki i jej źródła, no bo po co. Formatowanie kodu? A po cholere, przecież to lamerstwo. Sugerujące przeznaczenie nazewnictwo komponentów, a po co to komu? Niech będzie 100 Checkboxów i formatek, na pewno współtworzący projekt połapią się w tym, tak jak i Ty kiedy wrócisz do projektu za tydzień - o ile się Tobie w międzyczasie nie znudzi. Maksymalizacja okna i rozciąganie formatki - no pewnie, co z tego, że komponenty się i tak do niej nie dopasują. Umieszczenie formatki w miejscu takim samym jak u Ciebie, u kogoś z mniejszą/inną rozdzielczością - no pewnie, po co pisać uniwersalny program, będzie tylko do mojego użytku, o ile się w nim połapiesz. A nazwy modułów pewnie unit31337 - przecież na pierwszy rzut oka po nazwie wiadomo do czego służy. Wybacz powyższą ironię, ale naczytałem się payla i to "przez Niego" ;) Lepiej chyba żeby Tobie wytknąć błędy teraz niż później się przejedziesz. Zacznij od lektury kompendium i poprawienia powyższych błędów jakie popelniasz. Ja nie jestem żadnym guru, ale mogę powyższymi argumentami przekonać każdego, że pisząć iż znasz Delphi "bardzo dobrze" robiłeś sobie z nas żarty lub po prostu kłamałeś. Zostawiłem te super profesionalne nazwy unitów, to sobie później zmień i jak się nie umiesz zorientować, że zapisałeś jeden z plików poza katalogiem projektu to wspomagaj się jakimś managerem plików, żeby nie robić sobie bajzlu w katalogu z projektem.

EDIT: a temat ląduje w Newbie i póki co radzę Tobie tam umieszczać swoje pytania, bo póki co to widzę, że dotyczą one absolutnyc podstaw, także do działu Delphi się nie nadają.

edytowany 1x, ostatnio: olesio, 2011-09-16 16:48

Pozostało 580 znaków

2011-09-16 21:18
##### kamd
0

wiem, że nie mój temat, no właśnie olesio jak zrobić uniewersalny program obojętnie pod jaką roździelczosc?

w środowisku programistycznym - pisząc kod. - ŁF 2011-09-18 22:17

Pozostało 580 znaków

2011-09-16 21:44
##### GostekPro
0

to pytanie nawet nie bylo do newbie... w delphi ? formy ? wysokosc i szerokosc ?

Pozostało 580 znaków

2011-09-16 23:56
0
##### kamd napisał(a)

wiem, że nie mój temat, no właśnie olesio jak zrobić uniewersalny program obojętnie pod jaką roździelczosc?

Ja tworzę aplikacje zwykle w oknie, ale jeżeli już ma być uniweralny na dowolną, ale nieco większą rozdzielczość, to ja bym spróbował ze Scaled na True oraz ewentualnie położenia plus rozmiary kontrolek w oknie głownym poprzez zmienianie ich własności Aligment i Anchors. A i w razie potrzeby Widht oraz Height. Zwykle cały ekran zajmować musza aplikacje z jakimś komponentem do edycji tekstu, które mają Toolbar. Toolbar lub dodatkowe komponenty umieszczamy na Panelu ustawiając mu Aligment na alTop. Poniżej Edit/SynEdit albo jakiś ScrollBox na którym będą komponnety z własnością alClient. Nie jestem w tym ekspertem, ale na pewno nie ma sensu robić jak GostekPro, że SynEdit na kawałek ekranu, a zostawiony przycisk do maksymalizacji oraz nie ustalone jasno Position. Wielu programistów o tych własnościach zapomina, a wedle mnie ramke na Signle, zablokowanie Maksymalizacji oraz Position na poScreenCenter należy w razie potrzeby ustawić dla każdej formatki zaraz po jej utworzeniu czy dodaniu do projektu.

Pozostało 580 znaków