|
|
Strona 1 z 1
|
[ Posty: 11 ] |
|
Autor |
Wiadomość |
zz
Rejestracja: 2008-03-10, 14:01 Posty: 593
|
Replace w polu Edit
W pole Edit wpisuję liczbę z przecinkiem, a do tablicy chcę wpisać z kropką.
Co mam nie OK w poniższym kodzie, że nie chce wyjść z Edit-a?
Kod: int sub IsDecim() replace ",", "." : message buf endsub
sub xxx ..... Edit "", buf,170, 72,40,17, IsDecim()!=0: sTab(1)=buf
_________________ zz
|
2010-12-14, 14:39 |
|
|
Autor |
Wiadomość |
Mix-soft.pl
|
|
|
rafal
Ekspert
Rejestracja: 2007-11-16, 15:08 Posty: 4000 Pomógł: 448
|
Daj więcej kodu bo z tego ogryzka ciężko się połapać.
|
2010-12-14, 14:59 |
|
|
zz
Rejestracja: 2008-03-10, 14:01 Posty: 593
|
sie robi ;)
Kod: int sub IsDecim() replace ",", "." : message buf endsub
#define OK 2 #define ANULUJ -1 string sTabDlug(20), sTabIlosc(20) Form "OKNO",300,640 Group "", 10, 25,270,35 Text "Lp.", 60, 39, 50, 17 Text "Sztuk", 95, 39, 50, 17 Text "Wymiar", 175, 39, 50, 17 Group "", 10, 55,270,500 Edit " 1 ", sTabIlosc(1),85, 72,40,17 Edit "", buf,170, 72,40,17, IsDecim()!=0: sTabDlug(1)=buf Button "&OK", 100,560,80,25,OK Button "&Anuluj",200,560,80,25,ANULUJ ExecForm OnCommand
Int Sub OnCommand(int id, int msg) If id == 2 Then Save EndSub
_________________ zz
|
2010-12-14, 15:41 |
|
|
rafal
Ekspert
Rejestracja: 2007-11-16, 15:08 Posty: 4000 Pomógł: 448
|
1. Dlaczego zadeklarowałeś zmienne typu string do przechowywania danych typu float?
2. Nie lepiej użyć to tego projektu MxGrida? Wygląda, że świtenie by tu pasował.
Wogóle jakoś dziwnie to napisałeś.
Błąd jest np:
Kod: Int Sub OnCommand(int id, int msg) If id == 2 Then Save EndSub
id to id kontrolki na formie. Tu źle tego użyłeś.
|
2010-12-14, 21:53 |
|
|
koronen
Rejestracja: 2009-01-08, 11:43 Posty: 96 Pomógł: 1
|
A nie mógłbyś przypisać do Edita nowej zmiennej którą obrobiłbyś już po wyjściu z formu i dopiero wtedy zapisał do tablicy?
|
2010-12-15, 09:43 |
|
|
rafal
Ekspert
Rejestracja: 2007-11-16, 15:08 Posty: 4000 Pomógł: 448
|
a może użyj monEdit'a
|
2010-12-15, 09:56 |
|
|
zz
Rejestracja: 2008-03-10, 14:01 Posty: 593
|
Ale do pola MonEdit też trzeba chyba wpisać z kropką?
A ja chcę wpisać do Edt-a z przecinkiem, a w tablicy mieć z kropką.
PS. Zrobiłem zgodnie z radą Koroner'a i wygląda na to, że działa. Thx.
PS2. Chyba muszę się nauczyć MxGrida.
_________________ zz
Ostatnio zmieniony 2010-12-15, 13:02 przez zz, łącznie zmieniany 1 raz
|
2010-12-15, 12:49 |
|
|
rafal
Ekspert
Rejestracja: 2007-11-16, 15:08 Posty: 4000 Pomógł: 448
|
Zobacz, nawet nie chciało Ci się sprawdzić.
W monEdit wpisujesz z przecinkiem a wartość zapisywana jest to zmiennej typu float (czyli z kropką).
|
2010-12-15, 12:56 |
|
|
zz
Rejestracja: 2008-03-10, 14:01 Posty: 593
|
Przepraszam (za lenistwo). Przeczytałem help-a, a tam są tylko kropki.
A czy da się jakoś usunąć kalkulator?
_________________ zz
|
2010-12-15, 13:06 |
|
|
rafal
Ekspert
Rejestracja: 2007-11-16, 15:08 Posty: 4000 Pomógł: 448
|
jak chcesz bez kalkulatora to możesz użyć kontrolki MxEdit
Kod: dispatch dEdit
Form "OKNO",300,640 [..] CONTROL "edit", dEdit, 85, 72,80,17 [..] ExecForm OnCommand
Int Sub OnCommand(int id, int msg) if id == 0 && msg == 0 then
dEdit.Type = 2
endif
|
2010-12-15, 13:23 |
|
|
zz
Rejestracja: 2008-03-10, 14:01 Posty: 593
|
Dzięki za podpowiedzi, dałem dwa punciki :)
_________________ zz
|
2010-12-15, 13:46 |
|
|
|
Strona 1 z 1
|
[ Posty: 11 ] |
|
Kto jest online |
Użytkownicy przeglądający to forum: Nie ma żadnego zarejestrowanego użytkownika i 24 gości |
|
Nie możesz tworzyć nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz dodawać załączników
|
|
|
|