Hi all,
I created a simple application with one button and one richtextbox. The
purpose of the button is to open a FileDialog Common Dialogs to choose a
.txt file:
I created the button event:
evt_button(@button.get_id()){|event| open_file(event)}
the FileDialog widget
@file_dialog = Wx::FileDialog.new(@panel,
message = "Choose a file",
defaultDir = "",
defaultFile = "",
wildcard = "*.*",
style = DD_DEFAULT_STYLE,
pos = DEFAULT_POSITION,
sz = DEFAULT_SIZE,
name = "filedlg")
and the code to run the File.Dialog
def open_file(event)
@file_dialog.show_modal
end
What I don''t know is how can I import data from that file in order to
appear in my richtextbox, although I know that I must pass values to
richtextbox with rich_text_box.value = .....
If someone can explain that to me I would be very thankfull
Thanks in advance
Ivo Roupa
--
Posted via http://www.ruby-forum.com/.
Mario Steele
2010-May-23 17:11 UTC
[wxruby-users] Import data from a txt.file to a trichtextbox - Help
Hello Ivo,
There''s several methods in which to load a file into a RichTextCtrl.
The
first method is to use File.read, as such:
def open_file(event)
if @file_dialog.show_modal == Wx::ID_OK
@mytextbox.value = File.read(@file_dialog.filename)
end
end
The second method, is to use the builtin function from RichTextCtrl to load
the file
def open_file(event)
if @file_dialog.show_modal == Wx::ID_OK
@mytextbox.load_file(@file_dialog.filename)
end
end
The second method is quicker, and easier, if your just wanting to load a
simple file into the buffer. If you want to do custom highlighting, then
you would probably be best to load the file through the first method, but
instead of storing the value directly into @mytextbox.value, you would
probably do it through storing the data from the text file in a variable,
and parse it, using the RichTextCtrl functions to do the
colorizing/formatting/what have ya.
hth,
Mario
P.S. Take a look at http://wxruby.rubyforge.org/doc for our current API.
Most functions can be looked up there for basic handling of GUI elements.
On Sun, May 23, 2010 at 12:51 PM, Ivo Roupa <lists at ruby-forum.com>
wrote:
> Hi all,
>
> I created a simple application with one button and one richtextbox. The
> purpose of the button is to open a FileDialog Common Dialogs to choose a
> .txt file:
>
> I created the button event:
>
> evt_button(@button.get_id()){|event| open_file(event)}
>
> the FileDialog widget
>
> @file_dialog = Wx::FileDialog.new(@panel,
> message = "Choose a file",
> defaultDir = "",
> defaultFile = "",
> wildcard = "*.*",
> style = DD_DEFAULT_STYLE,
> pos = DEFAULT_POSITION,
> sz = DEFAULT_SIZE,
> name = "filedlg")
>
> and the code to run the File.Dialog
>
> def open_file(event)
> @file_dialog.show_modal
> end
>
> What I don''t know is how can I import data from that file in order
to
> appear in my richtextbox, although I know that I must pass values to
> richtextbox with rich_text_box.value = .....
>
> If someone can explain that to me I would be very thankfull
>
> Thanks in advance
>
> Ivo Roupa
> --
> Posted via http://www.ruby-forum.com/.
> _______________________________________________
> wxruby-users mailing list
> wxruby-users at rubyforge.org
> http://rubyforge.org/mailman/listinfo/wxruby-users
>
--
Mario Steele
Lieutenant 3 - Geo 99
XO - STO IFT Fleet
Chief Engineer - Second Life
http://www.iftcommand.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://rubyforge.org/pipermail/wxruby-users/attachments/20100523/96247eb1/attachment.html>
Ivo Roupa
2010-May-23 21:45 UTC
[wxruby-users] Import data from a txt.file to a trichtextbox - Help
Hello Mario
On first post I forgot to refer some things, like my OS (Windows), Ruby
version (1.9 - OneClickInstaller) and wxRuby version (2.0.1.)
Erroneus I also refer that I want to import data to a textbox but it''s
not. It''s for a RichTextbox (I''m not sure if it''s
very important but at
least it make me change some method names...).
def open_file(event)
if @file_dialog.show_modal == Wx::ID_OK
@rich_text_box.load_file(@file_dialog.get_filename, type =
RICHTEXT_TYPE_ANY)
end
end
The problem is that when I try to load the file I get an error message:
File couldn''t be loaded.
And when I ask to see the details the following message appears:
Can''t open file "ENA.txt"(error 2. the system cannot
find the
file specified.)
File couldn''t be loaded
I don''t understand why this happens because the file actually exists...
And if it''s not too much..Can you explain why do I need to use this
piece of code (== Wx::ID_OK)?
Thanks in advance
Ivo Roupa
--
Posted via http://www.ruby-forum.com/.
Mario Steele
2010-May-24 09:07 UTC
[wxruby-users] Import data from a txt.file to a trichtextbox - Help
Hello Ivo, On Sun, May 23, 2010 at 5:45 PM, Ivo Roupa <lists at ruby-forum.com> wrote:> Hello Mario > > On first post I forgot to refer some things, like my OS (Windows), Ruby > version (1.9 - OneClickInstaller) and wxRuby version (2.0.1.) > > Erroneus I also refer that I want to import data to a textbox but it''s > not. It''s for a RichTextbox (I''m not sure if it''s very important but at > least it make me change some method names...). > > def open_file(event) > if @file_dialog.show_modal == Wx::ID_OK > @rich_text_box.load_file(@file_dialog.get_filename, type > RICHTEXT_TYPE_ANY) > end > end > > The problem is that when I try to load the file I get an error message: > > File couldn''t be loaded. > > And when I ask to see the details the following message appears: > > Can''t open file "ENA.txt"(error 2. the system cannot find the > file specified.) > File couldn''t be loaded > > I don''t understand why this happens because the file actually exists... >My Apologizes, it should actually be, @rich_text_box.load_file(@file_dialog.get_path()) Not @rich_text_box.load_file(@file_dialog.get_filename()) The difference, is that get_filename() returns only the name of the file, in this case ENA.txt, where as get_path() will return the full path, such as C:\ENA.txt And if it''s not too much..Can you explain why do I need to use this> piece of code (== Wx::ID_OK)?The check for Wx::ID_OK is to ensure that the user actually hit OK, cause the user can still cancel a File Dialog, or close it without selecting a file, which the return from show_modal will be Wx::ID_CANCEL. Hence why there''s the check for Wx::ID_OK, to ensure that it is alright to progress further. Lastly, you don''t need to use type in the load_file method. If you need to specify a specific format, such as RTF, or something, you would use that, but the default value for type, is Wx::RICHTEXT_TYPE_ANY, which means it will load any file type that is available.> Thanks in advance >Not a problem, and my apologizes for the mistake in the method to use on the FileDialog.> Ivo Roupa > -- > Posted via http://www.ruby-forum.com/. > _______________________________________________ > wxruby-users mailing list > wxruby-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/wxruby-users >hth, Mario -- Mario Steele Lieutenant 3 - Geo 99 XO - STO IFT Fleet Chief Engineer - Second Life http://www.iftcommand.com -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://rubyforge.org/pipermail/wxruby-users/attachments/20100524/5aa1a4a0/attachment.html>
Ivo Roupa
2010-May-27 00:32 UTC
[wxruby-users] Import data from a txt.file to a trichtextbox - Help
Hello Mario, Thanks for your help.... The code it''s working fine and it''s exactly what I wanted. But know I get a doubt: I have read on Ruby Cookbook that when I list a dir I must write on my code "object_name.rewind" otherwise I can?t run more methods on that object. Does this also apply in this case? Because after I load the file to the textbox Enter key stops working. And about your mistake, it allow me to learn one more thinh :) Thanks in advance Ivo Roupa -- Posted via http://www.ruby-forum.com/.