Zdravím, opět takový další maličký oříšek (pro vás).
Nápověda mě zrazuje, nemůžu se v ní ani za mák vyznat.
Potřebuji nějakou proceduru, která spustí další okno mimo samotného exe souboru.
Můj konkrétní příklad: program běží a v určitou chvíli potřebuji, aby na mě vyskočilo okno s obrázkem třeba ve formátu JPEG.
To okno může být klidně normálně přímo pod windows, jen prostě aby ho to otevřelo (např. Prohlížeč obrázků).
Dále bych potřeboval vědět zda-li mohu měnit přímo uvnitř programu velikost rozlišení základního okna exe souboru.
Místo aby bylo nějakých jenom 22 řádků vysoké, aby bylo třeba 100 řádků vysoké. A pokud toto nejde, tak jak nastavit,abych mohl scrollovat v tom, co se tam vše již jednou vypsalo.
Děkuju moc předem.
Fórum › Pascal
Otevírání zcela jiných oken pomocí Pascalu, změna velikosti základního okna
V čem vlastně programuješ? TP? BP? FP? Delphi? Něco jiného?
V Delphi tohle zvládneš levou zadní. Okno je objekt typu tForm, načítání a zobrazování obrázků se řeší objektem tImage (nebo tCanvas? Nevím, moc už si to nepamatuju). Rozměry okna (formuláře) jsou jeho vlastnosti (properties), které se v programu dají normálně měnit.
Turbo Pascal je dosovský program, takže tohle standardně neumí. Ale dají se z něj pomocí přerušení volat služby WinAPI, kterými můžeš zobrazit windowsí okno, něco do něj nakreslit a tak (kdysi jsem na to viděl jednotku, ale už nevím kde - pátrej).
Borland Pascal umí kompilovat programy pro prostředí Windows, ale nevím, jestli to zahrnuje i práci s okny.
Freepascal to samé.
Změna počtu řádků v textovém režimu je jenom otázka nastavení správného videorežimu, což zase zvládá levou zadní TP - koukni se do helpu na příkaz Textmode.
Vyskočení okna s obrázkem můžeš vlastními prostředky zařídit v libovolném překladači. Stačí pracovat v grafickém režimu a nějaké okno si na obrazovku prostě nakreslit. A potom si nastudovat něco o grafických formátech a napsat si proceduru na načtení JPGčka. Nebo se prostě rozhlédnout kolem a odněkud si stáhnout už hotovou (hicolor grafiku a zobrazování JPG a hromady dalších standardních formátů zvládá Laacova jednotka VenomGFX, moje VESA umí 256 barev a s pár dalšími jednotkami i PCX).
Už jsi grafiku zkoušel, nebo děláš zatím jenom v texťáku?
Moje stránka.
To Mircosoft : S grafikou nemám ani mák zkušenosti. programuju ve Free Pascalu 2.22 asi necelý rok, mám to jako koníček od tý doby, co jsme to měli v rámci strojárny v prvním semestru.
Freepascal nepoužívám, ale podle toho, co jsem vyčetl z dokumentace, tak žádnou přímou podporu práce s okny nemá (tj. když už kompiluje pro Windows, tak ve stylu "konzolové aplikace" v Delphi). Takže se pusť do studia manuálů, kde určitě najdeš nějakou standardní grafickou jednotku dostatečně jednoduchou na použití (něco jako Graph v TP).
V TP vypadá práce s grafikou zhruba takhle:
1) Do programu přidáš jednotku Graph (uses graph;),
2) Přepneš obrazovku do fullscreenového grafického režimu (initgraph),
3) Používáš funkce pro kreslení (putpixel, setcolor, line, bar, rectangle, circle, putimage atd.),
4) Grafiku ukončíš (closegraph).
FP možná umí Graph emulovat. Ale existují i výkonnější jednotky psané přímo pro něj, které rovnou podporují i načítání standardních typů obrázků (např. Venomgfx, o které už jsem jednou psal).
Nové okno (skutečné windowsí) můžeš otevřít voláním WinAPI (když to jde i v TP, tak tady to musí jít určitě), ale na to, abys v něm zobrazil obrázek, stejně potřebuješ umět pracovat v grafice, takže si moc nepomůžeš.
Moje stránka.
Z kontextu bych pochopil, že dotaz směřuje na otevření nového windowsího okna.
To se dělá stejně jako v Delphi, proto se obrať na zdejší Delphi fórum z dotazem, jak manuálně (t.j. bez klikání na ikonky) vytvořit dvouokení aplikaci.
Eventuálně si k Freepascalu můžeš stáhnout nadstavbu Lazarus (jsou verze pro windows a pro Linux), která se chová jako prostředí Delphi. Čili ti z Freepascalu udělá něco jako Delphi a tam už si to naklikáš tak, jak píše Mircosoft.
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
WinAPI změna velikosti dětského okna pouze v jednom směru — založil yaqwsx
Otevírání a zavírání oken GUI — založil Robin
Makro - otevírání okna s výběrem — založil vlk1
Design okna a jiných komponent — založil DjHard
Otevírání složky pomocí hypertextového odkazu — založil null_while
Moderátoři diskuze