Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: Screenshot

Sivun loppuun

Varaosa [01.03.2007 08:58:39]

#

Joo, miten mahtanee onnistua ominaisuus, jolla voisi ottaa koko ruudusta screenshotin ja tallentaa se tiettyyn hakemistoon es. img/työpöydä(lle) kansioon vakiona!?

miiro [01.03.2007 09:13:09]

#

Voisitko vaikka aluksi kertoa, millä kielellä?

Ahaa, aiemmista viesteistä päätellen C++...

2min googletuksella löytyi tämä:
http://planetsourcecode.com/vb/scripts/ShowCode.asp?txtCodeId=10754&lngWId=3

Tuota voi myös sitten soveltaa niin, ettei se tallenna aina samaan tiedostoon.

Pliis, käytä aivoja kun ne sinullakin luultavasti on.

Varaosa [01.03.2007 11:03:36]

#

kiitos...

Varaosa [05.03.2007 08:35:26]

#

En saannut toimimaan tuota kun pastetin tuon koodin ja lisäsin sen painikkeeseen. Sen pitäisi ajaa koodi ja pystyisin sitten nappulaa painamalla, jälkeen päin ottamaan screenshotin.

hunajavohveli [05.03.2007 11:19:13]

#

Varaosa kirjoitti:

En saannut toimimaan tuota kun pastetin tuon koodin ja lisäsin sen painikkeeseen.

Ei sitä kannata suoraan kopioida painikkeeseen, kun se kerran on jo funktiona tuossa koodissa. Kopioit vain funktion (ja tietysti headerit) koodiin ja painikkeeseen lisäät ainoastaan koodin, joka kutsuu sitä funktiota. Tuosta koodista ei oikein muuten tiedä, mitä se on. Näyttäisi C:ltä, mutta kuitenkin siellä on iostream, jonka perään ei kuulu lisätä ".h":ta.

Varaosa [06.03.2007 08:53:30]

#

Sen pitäisi olla C++:saa, jota tässä vähän utelin. Mutta miksi, mukama kirjastoissa ei voi olla lyhennettä ".h"!? Itse laitan aina ja tulen aina laittamaan...

Varaosa [06.03.2007 08:55:26]

#

Mitkä function ja headerit minun pitää kalastaa erikseen!? Ja sitten vain lisään painikeseen kutsu functiot!?

feenix [06.03.2007 11:51:40]

#

Varaosa kirjoitti:

Sen pitäisi olla C++:saa, jota tässä vähän utelin. Mutta miksi, mukama kirjastoissa ei voi olla lyhennettä ".h"!? Itse laitan aina ja tulen aina laittamaan...

Ei kukaan sanonut ettei voi olla, mutta C++-standardissa vakio-otsakkeet ovat iostream jne, ilman .h:ta. Omissa voi käyttää mitä haluaa, noissa ei kannata.

hunajavohveli [06.03.2007 13:40:29]

#

Varaosa kirjoitti:

Mitkä function ja headerit minun pitää kalastaa erikseen!? Ja sitten vain lisään painikeseen kutsu functiot!?

Funktioon tuossa koodissa kuuluu "void TakeScreenShot(char* filename)" ja kaikki, mikä sen jälkeen tulee. Headerit (eri asia kuin kirjastot) ovat siis nämä:

#include <iostream>
#include <windows.h>
#include <stdio.h>

Ja iostream tosiaan standardin mukaan ilman .h:ta, kuten feenix sanoikin. Jos et muuten ole ihan sisäistänyt funktioiden tarkoitusta, niin lukaisepa tuosta: https://www.ohjelmointiputka.net/oppaat/opas.php?tunnus=cohj_3#funktio

WinC [06.03.2007 17:47:43]

#

Moi,

Huomasithan koodia koittaessasi, että siinä on kirjoitusvirhe

LPVOIDpBuf=NULL;

pitää olla muodossa:

LPVOID pBuf=NULL;

Tein ihan pikaisen testin ja kopio-liitin funktion

void TakeScreenShot(char* filename)
{
...
}

win32-projektissa tidoston loppuun.

Lisäsin nappiin koodin:

TakeScreenShot("c:\\kuvakaappaus.bmp");

sekä lisäsin tiedoston alkuun seuraavat rivit:

#include <iostream>
#include <windows.h>
#include <stdio.h>

void TakeScreenShot(char* filename);

Ja vaikuttaisi toimivan hyvin eli aina nappia painettaessa otetaan kuvakaappaus ruudusta.

Varaosa [09.03.2007 12:36:48]

#

WinC:

Pastetappa se koodi tähän niin kokeilen toimiiko se kun en saannut omaani toimimaan.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta