{"id":670,"date":"2015-01-27T22:18:12","date_gmt":"2015-01-27T22:18:12","guid":{"rendered":"http:\/\/linguagemprisma.net\/?p=670"},"modified":"2015-12-08T18:04:02","modified_gmt":"2015-12-08T22:04:02","slug":"obtendo-a-largura-e-altura-da-tela-com-o-igbr","status":"publish","type":"post","link":"https:\/\/linguagemprisma.br4.biz\/blog\/igprisma\/obtendo-a-largura-e-altura-da-tela-com-o-igbr\/","title":{"rendered":"obtendo a largura e altura da tela com o igbr"},"content":{"rendered":"<p>Bom vimos que com a biblioteca win podemos saber a altura e largura da tela e at\u00e9 definir uma resolu\u00e7\u00e3o, mas<\/p>\n<p>para o linux n\u00e3o temos a biblioteca win, logo vou mostrar como, pelo menos, obter a largura e altura da tela.<\/p>\n<p>&nbsp;<\/p>\n<p>Veja o c\u00f3digo \u00e9 bem simples:<\/p>\n<p>&nbsp;<\/p>\n<pre class=\"lang:prisma decode:true\">\/\/ como obter a altura e largura da tela\r\n\r\ninclua 'igbr' \/\/incluindo as funcoes interface grafica ig em pt-br\r\n\r\n\/\/ primeiro obtenha o display (ecra)\r\ndis = ig.display_obt_padrao ();\r\n\r\ntela = ig.display_obt_tela_padrao ( dis ); \/\/obtenha a tela padrao a partir do display (dis)\r\n\r\nalt = ig.tela_obt_altura ( tela ); \/\/obtendo a altura da tela\r\nlarg = ig.tela_obt_largura ( tela ); \/\/obtendo a largura da tela\r\n\r\nimprima( \"\\n\\nO tamanho da sua tela  e = \" .. larg .. \"x\" .. alt  .. \"\\n\\n\");\r\n\r\nsis.execute('pause');  \r\n\r\n<\/pre>\n<p>Observe que usamos uma s\u00e9rie de fun\u00e7\u00f5es para ent\u00e3o chegar ao resultado final:<\/p>\n<p>obtendo o display:<\/p>\n<pre class=\"lang:prisma decode:true\">dis = ig.display_obt_padrao ();<\/pre>\n<p>A vari\u00e1vel obtida do display ser\u00e1 usada para obter a tela agora:<\/p>\n<pre class=\"lang:prisma decode:true\">tela = ig.display_obt_tela_padrao ( dis );<\/pre>\n<p>No final s\u00f3 obter a altura passando a vari\u00e1vel tela para as fun\u00e7\u00f5es abaixo:<\/p>\n<pre class=\"lang:prisma decode:true\">alt = ig.tela_obt_altura ( tela ); \/\/obtendo a altura da tela\r\nlarg = ig.tela_obt_largura ( tela ); \/\/obtendo a largura da tela<\/pre>\n<p>&nbsp;<\/p>\n<p>Se voc\u00ea acha meio chato ficar lembrando tudo isso, pode criar uma biblioteca com fun\u00e7\u00f5es simplificadas, veja:<\/p>\n<p>Abra o prismacod ou editor de sua prefer\u00eancia e crie um arquivo chamado exatamente <strong>tela.pris<\/strong> com o conte\u00fado abaixo:<\/p>\n<pre class=\"lang:prisma decode:true \">\/\/Biblioteca exemplo para obter geometria da tela \r\n\/\/ -- Salve em um arquivo separado com o nome tela.pris\r\n\r\n\r\nfuncao obt_dimensao_tela ( )\r\n  local dis = ig.display_obt_padrao ();\r\n  local tela = ig.display_obt_tela_padrao ( dis ); \/\/obtenha a tela padrao a partir do display (dis)\r\n  local x = {} ; \/\/criando uma tabela para passar os valores:\r\n  x.alt = ig.tela_obt_altura ( tela ); \/\/obtendo a altura da tela\r\n  x.larg = ig.tela_obt_largura ( tela ); \/\/obtendo a largura da tela\r\n \r\n  retorne x; \/\/retornando a tabela j\u00e1 com os campos alt e larg preenchidos\r\nfim\r\n\r\n\r\n\r\n<\/pre>\n<p>Agora crie um programa prisma chamado\u00a0\u00a0 usando_tela.prisma (pode ser outro nome se preferir) e copie o c\u00f3digo abaixo:<\/p>\n<pre class=\"lang:prisma decode:true\">\/\/utilizando a biblioteca tela\r\ninclua'tela' \/\/importando sua biblioteca\r\n\r\n\/\/pronto s\u00f3 usar normalmente a fun\u00e7\u00e3o como se ela estivesse declarada aqui:\r\n\r\ndimensao = obt_dimensao_tela( );\r\n\r\nimprima (   dimensao.larg , dimensao.alt );\r\n \/\/perceba que o retorno passa exatamente os campos da tabela dentro da fun\u00e7ao\r\n<\/pre>\n<p>&nbsp;<\/p>\n<p>Viu como \u00e9 muito f\u00e1cil criar sua pr\u00f3pria biblioteca e utiliz\u00e1-la.<\/p>\n<p><a href=\"http:\/\/linguagemprisma.net\/wp-content\/uploads\/2015\/01\/obs.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-556\" src=\"http:\/\/linguagemprisma.net\/wp-content\/uploads\/2015\/01\/obs.png\" alt=\"obs\" width=\"51\" height=\"69\" \/><\/a>\u00a0 Obs. Para funcionar a biblioteca deve estar na mesma pasta do programa<\/p>\n<p><a href=\"http:\/\/linguagemprisma.net\/wp-content\/uploads\/2015\/01\/dica.jpeg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-557\" src=\"http:\/\/linguagemprisma.net\/wp-content\/uploads\/2015\/01\/dica.jpeg\" alt=\"dica\" width=\"56\" height=\"56\" \/><\/a>Dica : para mais programas usarem a mesma biblioteca, mesmo sem estar na pasta do programa,<\/p>\n<p>basta colocar a biblioteca no diret\u00f3rio de bibliotecas prisma, que pode ser:<\/p>\n<p>C:\\\\Prisma\\\\1.0\\\\bin\\\\clibs\u00a0\u00a0\u00a0\u00a0 se a biblioteca for em C<\/p>\n<p>e\u00a0\u00a0\u00a0 C:\\\\Prisma\\\\1.0\\\\bin\\\\plibs\u00a0\u00a0 para bibliotecas feitas em prisma, que \u00e9 o caso acima.<\/p>\n<p>&nbsp;<\/p>\n<p>Falou pessoal, at\u00e9 a pr\u00f3xima!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Bom vimos que com a biblioteca win podemos saber a altura e largura da tela e at\u00e9 definir uma resolu\u00e7\u00e3o, mas para o linux n\u00e3o temos a biblioteca win, logo vou mostrar como, pelo menos, obter a largura e altura da tela. &nbsp; Veja o c\u00f3digo \u00e9 bem simples: &nbsp; \/\/ como obter a altura&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,6],"tags":[],"class_list":["post-670","post","type-post","status-publish","format-standard","hentry","category-igprisma","category-modo_texto"],"_links":{"self":[{"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/posts\/670","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/comments?post=670"}],"version-history":[{"count":2,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/posts\/670\/revisions"}],"predecessor-version":[{"id":1528,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/posts\/670\/revisions\/1528"}],"wp:attachment":[{"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/media?parent=670"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/categories?post=670"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/linguagemprisma.br4.biz\/blog\/wp-json\/wp\/v2\/tags?post=670"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}