no no [extended]

0

Hymm..
Mam taki problemik z typem Extended. Postaram się opisać to na przykładzie a potem zadać pytanie.
Przykład:
Jeżeli użyjemy konponentu Timer do odliczania liczby i żeby nam pokazywał tę liczbę na Label`u możemy użyć np. :

label.caption:=IntToStr(Timer1.Interval-999); 

*999 jeżeli mamy Interval=1000
*wtedy na labelu będzie odliczane od zera
timer1.Interval:=timer1.Interval+1;

Wynikiem powyższego na labelu będzie odliczana liczba od zera w górę. Liczba ta będzie typu zmiennocinkowego Extended.
Pytania:

  1. Jak podzielić liczbę wyświetlaną na labelu przez liczbę wpisaną w edit wiedząc że liczba w edicie jest typu Integer.
  2. Jak ew. zamienić typ Extended na Integer lub odwrotnie.

II.
Jakiej użyć procedury aby po wpisaniu w edit niepełnego słowa (np. d*** lub d???)(brakujące litery oznaczać np. * lub ?) i wciśnięciu klawisza wyszukała nam wszystkie pasujące wyrazy z RichEdit lub Memo.

To pytanie już było ale gościu legitymujący się podpisem
"Pomoc i analiza źródeł wszystko czego potrzebujesz ( no i może odrobinę logicznego myślenia)" udzielił mi odpowiedzi ( za co BIG dzięki )

"Jeżeli nieznane znaczki nie są literami ani cyframi to:
poczatek:=RichEdit1.FindText('qqq'+#0+'www',0,100,[stWholeWord]);

#0- jest tam gdzie brakujący znak.
Dla liter szukam jakiegoś prostego sposobu "

I właśnie czekam na to prostsze rozw(dla literek oczywiście)

**************************************************************III.
Hymm..
Jak uzyskać taki efekt jak w np. Word2000 kiedy to w miejsce gdzie widnieje nazwa czcionki zaczniemy wpisywać np. Times.. to program uzupełni resztę ew. zaznaczy najbardziej pasujący element z listy.
???????? Jak uzyskać podobny efekt tylko że nazwę wpisujemy w Edit a elementy znajdują sie w FileListBox.
Może da sie to zrobić przy użyciu MaskEdit gdzie jest maska "C" lub "c" która oznacza pozwala wpisać dowolny znak.
na pewno jest to banalnie proste rozw. ale ...


IV.
czy mugłby mi ktoś kopsnoąć seriala (ew. Kgen'a) do Game Wizard'a bo nie mogę na sieci takowego znaleźć. VERSJA 2.1
-- [email protected]


V.
Jak odczytać kawałek pliku txt i wyświetlić go RichEdit. Przykładem takiego czegoś co chcę uzyskać jest FAQ które znajduje się na waszej stronie.
Jeżeli to coś da to na Forum znalazłem coś takiego tyle że w edit:
var
Text : String;
begin
Text := Copy(Edit1.Text, 15, 150-15);
Label1.Caption := Text; //wyswietlenie na labelu
end;

0

Extended na Integer i odwrotnie:
Spróbuj FloatToInt/ IntToFloat powinno dzialac :-)

0

IV. To chyba lekko nie legalne ;)--Spin
Delphi - Lets make Windows better....

0

Co do odliczania timerem to kazdy kolejny cykl bedzie trwal o 1ms dluzej od poprzedniego wiec jakiego typu to jest odliczanie, bo na pewno nie zliczanie sekund.

Co do [bodajze III punktu], czyli wpisaniu do edita kilku slow, a w listboxie zaznaczenie pierwszej pasujacej odpowiedzi. Mozna zrobic to tak ze dla OnChange edita wstawiasz petle ktora sprawdza kazdy element

for n:=0 to Listbox.items.count-1 do
begin
if pos(edit.text,listbox1.items.strings[n])&gt=0 then Listbox.itemindex:=n;
end;

cos takiego n ieweim czy bedzie dokladnie dzialac ale masz punkt odniesienia :)--W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi.

0

LUSIO napisał:
Hymm..
&gtMam taki problemik z typem Extended. Postaram się opisać to na przykładzie a potem zadać pytanie.
&gtPrzykład:
&gtJeżeli użyjemy konponentu Timer do odliczania liczby i żeby nam pokazywał tę liczbę na Label`u możemy użyć np. :
&gt
&gt label.caption:=IntToStr(Timer1.Interval-999);
&gt999 jeżeli mamy Interval=1000
&gt
wtedy na labelu będzie odliczane od zera
&gt timer1.Interval:=timer1.Interval+1;
&gt
&gtWynikiem powyższego na labelu będzie odliczana liczba od zera w górę. Liczba ta będzie typu zmiennocinkowego Extended.
&gtPytania:
&gt1. Jak podzielić liczbę wyświetlaną na labelu przez liczbę wpisaną w edit wiedząc że liczba w edicie jest typu Integer.
&gt2. Jak ew. zamienić typ Extended na Integer lub odwrotnie.
&gt

Po pierwsze: Na jakiej podstawie twierdzisz, że "Liczba ta będzie typu zmiennocinkowego Extended." Liczba ta będzie typu stałoprzecinkowego Cardinal.
Jak podzielić? StrToInt(Label1.Caption)/StrToInt(Edit1.Text). Jeżeli w tym labelu naprawdę jest liczba typu Extended to zamiast StrToInt użyj StrToFloat.
Jak zamienić typ Extended na Integer? Obetnij część ułamkową (Trunc) lub zaokrąglij (Round). W drugą stronę komputer sam zamienia.--Jest jeszcze jeden błąd ... :)

------------Reklama-------------
Szukasz pomocy?
Najszybsza pomoc dostępna na IRC:
serwer: warszawa.ircnet.pl
sieć: POLNet
kanał: #4programmers.net lub #4programmers

0

LUSIO napisał:
&gtII.
&gtJakiej użyć procedury aby po wpisaniu w edit niepełnego słowa (np. d*** lub d???)(brakujące litery oznaczać np. * lub ?) i wciśnięciu klawisza wyszukała nam wszystkie pasujące wyrazy z RichEdit lub Memo.
&gt
&gtTo pytanie już było ale gościu legitymujący się podpisem
&gt"Pomoc i analiza źródeł wszystko czego potrzebujesz ( no i może odrobinę logicznego myślenia)" udzielił mi odpowiedzi ( za co BIG dzięki )
&gt
&gt"Jeżeli nieznane znaczki nie są literami ani cyframi to:
&gtpoczatek:=RichEdit1.FindText('qqq'+#0+'www',0,100,[stWholeWord]);
&gt
&gt#0- jest tam gdzie brakujący znak.
&gtDla liter szukam jakiegoś prostego sposobu "
&gt
&gtI właśnie czekam na to prostsze rozw(dla literek oczywiście)
&gt
Jedna rzecz. Jeżeli piszesz pytania kompletnie inne to pisz je w oddzielnych postach, bo znacznie łatwiej odpowiadać.

Podpis już zmieniłem :) ale innego sposobu jeszcze nie znalazłem. Jest taka funkcja WinAPI, która wyszukuje na tej zasadzie wśród nazw plików FindFileFirs. Nad funkcją wyszukującą literek pracuję.

&gt**************************************************************III.
&gtHymm..
&gtJak uzyskać taki efekt jak w np. Word2000 kiedy to w miejsce gdzie widnieje nazwa czcionki zaczniemy wpisywać np. Times.. to program uzupełni resztę ew. zaznaczy najbardziej pasujący element z listy.
&gt???????? Jak uzyskać podobny efekt tylko że nazwę wpisujemy w Edit a elementy znajdują sie w FileListBox.
&gtMoże da sie to zrobić przy użyciu MaskEdit gdzie jest maska "C" lub "c" która oznacza pozwala wpisać dowolny znak.
&gtNapewno jest to banalnie proste rozw. ale ...
&gt

Ja taki notatnik sobie robię, gdzie uzupełnia tak jak w Delphi. Ale to działa na bardzo prymitywnych zasadach :) To są bardzo wone funkcje (ale czy w notatniku potrzebuję czegoś szybkiego :) )

&gt**************************************************************
&gtIV.
&gtczy mugłby mi ktoś kopsnoąć seriala (ew. Kgen'a) do Game Wizard'a bo nie mogę na sieci takowego znaleźć. VERSJA 2.1
&gt-- [email protected]
&gt**************************************************************

Jedne co zawsze pomaga to ruskie strony z crackami www.cracks.ru i www.referat.com (ale ja Ci niczego nie powiedziałem ;) )

&gtV.
&gtJak odczytać kawałek pliku txt i wyświetlić go RichEdit. Przykładem takiego czegoś co chcę uzyskać jest FAQ które znajduje się na waszej stronie.
&gtJeżeli to coś da to na Forum znalazłem coś takiego tyle że w edit:
&gtvar
&gt Text : String;
&gtbegin
&gt Text := Copy(Edit1.Text, 15, 150-15);
&gt Label1.Caption := Text; //wyswietlenie na labelu
&gtend;
&gt&lt-- chodzi tutaj o odczytanie znaków od 15 do 150 w Edit

Jak chcesz odczytać tekst z pliku TXT to użyj Seek(15) potem np w pętelce Read (albo od razu te 150-15) i gotowe :)--Jest jeszcze jeden błąd ... :)

------------Reklama-------------
Szukasz pomocy?
Najszybsza pomoc dostępna na IRC:
serwer: warszawa.ircnet.pl
sieć: POLNet
kanał: #4programmers.net lub #4programmers

0

Ad. III :)

w OnChange Edita wpisujemy:

var
i : Integer;
begin

if Edit1.Text '' then
begin
for i := 0 to FileListBox1.Items.Count - 1 do
if Pos(AnsiUpperCase(Edit1.Text), AnsiUpperCase(FileListBox1.Items[i])) = 1 then
begin
FileListBox1.ItemIndex := i;
Break;
end
else
FileListBox1.ItemIndex := -1;
end
else
FileListBox1.ItemIndex := -1;

end;

przyklad ten jest zrobiony przy pomocy Edit1 i FileListBox1 :)---=-=[ Delphi 3, 6 ]=-=-
-=-=-==[ LKS ]==-=-=-
-=[ [email protected] ]=-

0

Czy widzieliś cie kiedyś coś co było by całkowicie legalne?
pozdrow from LUSIO

1 użytkowników online, w tym zalogowanych: 0, gości: 1